redustudio / catagger
Create a collection of types
Requires
- php: >=5.5.0
- illuminate/support: ~5.2
Requires (Dev)
- phpunit/phpunit: 4.*
This package is not auto-updated.
Last update: 2024-11-23 21:44:46 UTC
README
Simple way to creating types for item on your Laravel App, such as category and tag for article or product, genre for movie, skill for user, etc.
Installation
In order to install Catagger, just enter on your terminal
$ composer require redustudio/catagger
In config/app.php
file, add
Redustudio\Catagger\ServiceProvider::class,
in the providers
array and
'Catagger' => Redustudio\Catagger\Facade::class,
to the aliases
array.
If you are not using Laravel 5.3, run this command for publishing migration.
$ php artisan vendor:publish --provider="Redustudio\Catagger\ServiceProvider" --tag="migrations"
then
$ php artisan migrate
for migration catagger tables.
Usage
Attaching to Item
// Post use Redustudio\Catagger\CataggerTrait; class Post extends Model { use CataggerTrait; public function categories() { return $this->cataggers('category'); } public function tags() { return $this->cataggers('tag'); } } $category = 'Programming'; Catagger::sync($post->categories(), $category); $tags = ['PHP', 'Laravel', 'Package']; Catagger::sync($post->tags(), $tags);
// Movie use Redustudio\Catagger\CataggerTrait; class Movie extends Model { use CataggerTrait; public function genres() { return $this->cataggers('genre'); } } $genres = ['Action', 'Adventure', 'Sci-Fi']; Catagger::sync($movie->genres(), $genres);
Detaching from Item
$genres = ['Action', 'Adventure', 'Sci-Fi']; Catagger::sync($movie->genres(), $genres); $genres = ['Action', 'Sci-Fi']; Catagger::detach($movie->genres(), $genres); // detaching 'Action' and `Sci-Fi` // detaching all genres Catagger::detach($movie->genres());
Todo
- Unit Test
About ReduStudio
ReduStudio is web development freelancers based in Yogyakarta and East Borneo, Indonesia. We specialise in developing websites and web apps with Laravel, the most popular PHP Framework.
Let's Start Project With Us
Just Contact Us At:
- Email: redustudio@gmail.com
- Facebook: ReduStudio's FB Page
License
The MIT License (MIT). Please see License File for more information.