Module: ActsAsTaggableOn::Taggable::Related::ClassMethods

Defined in:
lib/acts_as_taggable_on/taggable/related.rb

Instance Method Summary collapse

Instance Method Details

#acts_as_taggable_on(*args) ⇒ Object



27
28
29
30
# File 'lib/acts_as_taggable_on/taggable/related.rb', line 27

def acts_as_taggable_on(*args)
  super(*args)
  initialize_acts_as_taggable_on_related
end


12
13
14
15
16
17
18
19
20
21
22
23
24
25
# File 'lib/acts_as_taggable_on/taggable/related.rb', line 12

def initialize_acts_as_taggable_on_related
  tag_types.map(&:to_s).each do |tag_type|
    class_eval <<-RUBY, __FILE__, __LINE__ + 1
    def find_related_#{tag_type}(options = {})
      related_tags_for('#{tag_type}', self.class, options)
    end
    alias_method :find_related_on_#{tag_type}, :find_related_#{tag_type}

    def find_related_#{tag_type}_for(klass, options = {})
      related_tags_for('#{tag_type}', klass, options)
    end
    RUBY
  end
end