Module: ActiveRecord::Model

Defined in:
lib/includable/activerecord/model.rb

Overview

Inclusion of this module is equivalent to subclassing from ActiveRecord::Base. In other words, these are effectively equivalent:

class User
  include ActiveRecord::Model
end

class User < ActiveRecord::Base
end

Constant Summary collapse

EXTENDED_MODULES =
(ActiveRecord::Base.extended_modules - Object.extended_modules).reverse
INCLUDED_MODULES =
(ActiveRecord::Base.included_modules - Object.included_modules).reverse

Class Method Summary collapse

Class Method Details

.included(base) ⇒ Object



16
17
18
19
# File 'lib/includable/activerecord/model.rb', line 16

def self.included(base)
  EXTENDED_MODULES.each{|mod| base.__send__(:extend, mod)}
  INCLUDED_MODULES.each{|mod| base.__send__(:include, mod)}
end