class ActsAsTaggableOnMongoid::Taggable::TaggedWithQuery::MatchAllTagsQuery

A class finding all Taggable objects which include all and only all of the passed in tags.

Public Instance Methods

build() click to toggle source
# File lib/acts_as_taggable_on_mongoid/taggable/tagged_with_query/match_all_tags_query.rb, line 8
def build
  { :id.in => included_ids }
end
included_ids() click to toggle source
# File lib/acts_as_taggable_on_mongoid/taggable/tagged_with_query/match_all_tags_query.rb, line 12
def included_ids
  selector         = Mongoid::Criteria::Queryable::Selector.new
  selector[:count] = { "$ne" => tag_list.count }

  AllTagsQuery.new(tag_definition, tag_list, options).included_ids -
      build_tagless_ids_from(selector)
end