Mongoid Taggable On
Mongoid Taggable provides some helpers to create taggable documents, can use many fields.
Status
Installation
You can simple install from rubygems:
gem install mongoid_taggable_on
or in Gemfile:
gem "mongoid_taggable_on"
Usage
class Movie
include Mongoid::Document
include Mongoid::TaggableOn
taggable_on :actors, index: false
taggable_on :directors
taggable_on :countries
field :title
field :summary
end
Now you can use sample:
irb> movie = Movie.new
irb> movie.actor_list = "Jason Statham, Joseph Gordon-Levitt, Johnny Depp, Nicolas Cage"
irb> movie.actors
["Jason Statham", "Joseph Gordon-Levitt", "Johnny De", "Nicolas Cage"]
irb> movie.country_list = "United States| China|Mexico"
irb> movie.countries
["United States", "China","Mexico"]
find with tag:
irb> Movie.tagged_with_on(:actors, "Jason Statham, Joseph Gordon-Levitt")
irb> Movie.tagged_with_on(:actors, "Jason Statham, Joseph Gordon-Levitt", match: :any)
irb> Movie.tagged_with_on(:actors, "Nicolas Cage", match: :not)
Allow split chars
, ,| /
Who used that?
In 720p.so, the Movie actors, directors, languages, countries, tags all base in mongoid_taggable_on.