rails--rails/activerecord/lib/active_record/model.rb

54 lines
1.7 KiB
Ruby
Raw Normal View History

module ActiveRecord
module Model
2011-12-18 23:35:25 +00:00
# So we can recognise an AR class even while self.included is being
# executed. (At that time, klass < Model == false.)
module Tag #:nodoc:
end
def self.included(base)
base.class_eval do
2011-12-18 23:35:25 +00:00
include Tag
include ActiveRecord::Persistence
extend ActiveModel::Naming
extend QueryCache::ClassMethods
extend ActiveSupport::Benchmarkable
extend ActiveSupport::DescendantsTracker
extend Querying
include ReadonlyAttributes
include ModelSchema
extend Translation
include Inheritance
include Scoping
extend DynamicMatchers
include Sanitization
include Integration
include AttributeAssignment
include ActiveModel::Conversion
include Validations
extend CounterCache
include Locking::Optimistic, Locking::Pessimistic
include AttributeMethods
include Callbacks, ActiveModel::Observing, Timestamp
include Associations
include IdentityMap
include ActiveModel::SecurePassword
extend Explain
# AutosaveAssociation needs to be included before Transactions, because we want
# #save_with_autosave_associations to be wrapped inside a transaction.
include AutosaveAssociation, NestedAttributes
include Aggregations, Transactions, Reflection, Serialization, Store
include Core
2011-12-18 23:35:25 +00:00
self.connection_handler = ActiveRecord::Base.connection_handler
end
end
end
end
require 'active_record/connection_adapters/abstract/connection_specification'
2011-12-18 23:35:25 +00:00
ActiveSupport.run_load_hooks(:active_record, ActiveRecord::Model)