Module: Markable::ActsAsMarker::ClassMethods

Defined in:
lib/markable/acts_as_marker.rb

Instance Method Summary collapse

Instance Method Details

#acts_as_marker(options = {}) ⇒ Object



6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# File 'lib/markable/acts_as_marker.rb', line 6

def acts_as_marker(options = {})
  Markable.set_models
  class_eval do
    class << self
      attr_accessor :marker_name
    end
  end
  self.marker_name = self.name.downcase.to_sym

  class_eval do
    has_many :marker_marks, :class_name => 'Markable::Mark', :as => :marker, :dependent => :delete_all
    include Markable::ActsAsMarker::MarkerInstanceMethods
  end
  Markable.add_marker self
end