Tag support for laravel models
Clone or download
Pull request Compare This branch is 2 commits ahead, 214 commits behind rtconner:laravel-5.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
src
tests
.gitignore
LICENSE
README.md
composer.json

README.md

Laravel Tag Plugin

Total Downloads License

This package is not meant to handle javascript or html in any way. This package handles database storage and read/writes only.

There are no real limits on what characters can be used in a tag. It uses a slug transform to determine if two tags are identical ("sugar-free" and "Sugar Free" would be treated as the same tag). Tag display names are run through Str::title()

Composer Install

"require": {
    "rtconner/laravel-tagging": "dev-master"
}

Run the migrations

php artisan migrate --package=rtconner/laravel-tagging

Setup your models

class Article extends \Eloquent {
    use Conner\Tagging\Taggable;
}

Sample Usage

$article->tag('Gardening'); // attach the tag

$article->untag('Cooking'); // remove Cooking tag
$article->untag(); // remove all tags

$article->retag(array('Fruit', 'Fish')); // delete current tags and save new tags

$article->tagged(); // return Collection of rows tagged to article

$article->tagNames(); // get array of related tag names	

Article::withAnyTag('Gardening, Cooking')->get() // fetch articles with any tag listed
Article::withAnyTag(array('Gardening','Cooking'))->get() // different sytax same result as above

Article::withAllTags('Gardening, Cooking')->get() // only fetch articles with all the tags

Conner\Tagging\Tag::where('count', '>', 2)->get(); // return all tags used more than twice