Module: ActiveRecord::Sti::Enum

Defined in:
lib/activerecord/sti/enum.rb

Defined Under Namespace

Modules: ClassMethods

Class Method Summary collapse

Class Method Details

.included(klass) ⇒ Object



6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
# File 'lib/activerecord/sti/enum.rb', line 6

def self.included(klass)
  klass.extend ClassMethods
  klass.class_eval do
    def self.inherited(child)
      begin
        self.class_eval do
          add_enum({self.inheritance_column => {child.to_s.underscore.to_sym => child.to_s}})
        end
      ensure
        super
      end
    end
  end
  Dir.glob('./app/models/*.rb').each do |f|
    require File.basename(f)
  end
end