module ActsAsTaggableOn::Tagger::InstanceMethods
Public Instance Methods
tag(taggable, opts = {})
click to toggle source
Tag
a taggable model with tags that are owned by the tagger.
@param taggable The object that will be tagged @param [Hash] options An hash with options. Available options are:
* <tt>:with</tt> - The tags that you want to * <tt>:on</tt> - The context on which you want to tag
Example:
@user.tag(@photo, :with => "paris, normandy", :on => :locations)
# File lib/acts-as-taggable-on/tagger.rb, line 55 def tag(taggable, opts = {}) opts.reverse_merge!(force: true) skip_save = opts.delete(:skip_save) return false unless taggable.respond_to?(:is_taggable?) && taggable.is_taggable? raise 'You need to specify a tag context using :on' unless opts.key?(:on) raise 'You need to specify some tags using :with' unless opts.key?(:with) unless opts[:force] || taggable.tag_types.include?(opts[:on]) raise "No context :#{opts[:on]} defined in #{taggable.class}" end taggable.set_owner_tag_list_on(self, opts[:on].to_s, opts[:with]) taggable.save unless skip_save end
tagger?()
click to toggle source
# File lib/acts-as-taggable-on/tagger.rb, line 70 def tagger? self.class.is_tagger? end
Also aliased as: is_tagger?