No description or website provided.
Clone or download
Latest commit 6f2cd09 Nov 10, 2018

Laravel Categories

Build Status PHP from Packagist Latest Version License


Require this package, with Composer, in the root directory of your project.

$ composer require faustbrian/laravel-categories

To get started, you'll need to publish the vendor assets and migrate:

php artisan vendor:publish --provider="BrianFaust\Categories\CategoriesServiceProvider" && php artisan migrate


Nested Sets

Check lazychaser/laravel-nestedset to learn how to create, update, delete, etc. categories.

Setup a Model


namespace App;

use BrianFaust\Categories\Traits\HasCategories;
use Illuminate\Database\Eloquent\Model;

class Post extends Model
    use HasCategories;


Get an array with ids and names of categories (useful for drop-downs)


Attach the Post Model these Categories

$post->syncCategories([Category::find(1), Category::find(2), Category::find(3)]);

Detach the Post Model from these Categories


Detach the Post Model from all Categories and attach it to the new ones

$post->syncCategories([Category::find(1), Category::find(3)]);

Attach the Post Model to the given Category


Detach the Post Model from the given Category


Get all Posts that are attached to the given Category



$ phpunit


If you discover a security vulnerability within this package, please send an e-mail to All security vulnerabilities will be promptly addressed.



MIT © Brian Faust