Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
basic and simple tagging system for mongoid using map-reduce function
Ruby
branch: master
Failed to load latest commit information.
gemfiles
lib Update mongoid-simple-tags.rb
spec
.gitignore upgrade gemspec
.rspec improving gemspec and update dependencies
.travis.yml running tests with mongoid 3.1.x
CHANGELOG.md just creates a changelog
Gemfile adding coveralls
Gemfile.lock
LICENSE.txt Initial commit to mongoid-simple-tags.
README.rdoc Update Readme
Rakefile improving gemspec and update dependencies
VERSION Updates
donate.png supports donations
mongoid-simple-tags.gemspec Updates
mongoid.yml support mongoid v3 (only); clean up and refactor;

README.rdoc

mongoid-simple-tags Gem Version

mongoid-simple-tags is a basic and simple tagging system for mongoid using map-reduce function (no backwards compatibility with mongoid v2!)

Install

Add the following to Gemfile:

  gem "mongoid-simple-tags"

Usage

Model

class User
  include Mongoid::Document
  include Mongoid::Document::Taggable
end

Console

u = User.create(:name => "Tuquito", tag_list: "linux, tucuman, free software")

u.tags     # => ["linux","tucuman","free software"]

User.tagged_with("linux") # => [u]
User.tagged_with(["tucuman", "free software"]) # => [u]
User.tagged_with(["linux", "foo"]) # => [u]

User.tagged_with_all(["linux"]) # => [u]
User.tagged_with_all(["linux", "foo"]) # => []

u2 = User.new(:name => "ubuntu")
u2.tag_list = "linux"
u2.save

User.tagged_with("linux") # => [u, u2]
User.tagged_with(["linux", "tucuman"]) # => [u, u2]

User.tagged_with_all(["linux", "tucuman"]) # => [u]

# using map-reduce function

User.all_tags #=>[{:name=>"free software", :count=>1}, {:name=>"linux", :count=>2}, {:name=>"tucuman", :count=>1}]

User.tag_list #=>["free software", "linux", "tucuman"]

Give back

If you're using mongoig-simple-tags and you or your company is making money from it, then please consider donating via Gittip so that I can continue to improve it.

Contributors

Copyright

Copyright © 2011 chebyte(mauro torres). See LICENSE.txt for further details.

Something went wrong with that request. Please try again.