1
0
Fork 0
mirror of https://github.com/rails/rails.git synced 2022-11-09 12:12:34 -05:00

Merge pull request #8312 from senny/make_active_model_parts_individually_loadable

make sure that individual parts `ActiveModel` can be required by itself
This commit is contained in:
Rafael Mendonça França 2012-11-26 04:11:17 -08:00
commit 3ec443086b
9 changed files with 14 additions and 21 deletions

View file

@ -1,5 +1,10 @@
## Rails 4.0.0 (unreleased) ##
* Removed dispensable `require` statements. Make sure to require `active_model` before requiring
individual parts of the framework.
*Yves Senn*
* Use BCrypt's MIN_COST in the test environment for speedier tests when using `has_secure_pasword`.
*Brian Cardarella + Jeremy Kemper + Trevor Turk*

View file

@ -8,7 +8,7 @@ module ActiveModel
#
# user = User.first
# user.pets.select(:id).first.user_id
# # => ActiveModel::MissingAttributeError: missing attribute: user_id
# # => ActiveModel::MissingAttributeError: missing attribute: user_id
class MissingAttributeError < NoMethodError
end
# == Active \Model Attribute Methods
@ -202,7 +202,7 @@ module ActiveModel
# person.name # => "Bob"
# person.nickname # => "Bob"
# person.name_short? # => true
# person.nickname_short? # => true
# person.nickname_short? # => true
def alias_attribute(new_name, old_name)
self.attribute_aliases = attribute_aliases.merge(new_name.to_s => old_name.to_s)
attribute_method_matchers.each do |matcher|

View file

@ -1,5 +1,3 @@
require 'active_support/callbacks'
module ActiveModel
# == Active \Model \Callbacks
#

View file

@ -1,5 +1,3 @@
require 'active_support/inflector'
module ActiveModel
# == Active \Model Conversions
#

View file

@ -1,4 +1,3 @@
require 'active_model/attribute_methods'
require 'active_support/hash_with_indifferent_access'
require 'active_support/core_ext/object/duplicable'

View file

@ -1,4 +1,3 @@
require 'active_support/inflector'
require 'active_support/core_ext/hash/except'
require 'active_support/core_ext/module/introspection'
@ -56,8 +55,8 @@ module ActiveModel
# end
#
# BlogPost.model_name <=> 'BlogPost' # => 0
# BlogPost.model_name <=> 'Blog' # => 1
# BlogPost.model_name <=> 'BlogPosts' # => -1
# BlogPost.model_name <=> 'Blog' # => 1
# BlogPost.model_name <=> 'BlogPosts' # => -1
##
# :method: =~

View file

@ -5,7 +5,6 @@ require 'active_support/core_ext/module/remove_method'
require 'active_support/core_ext/string/inflections'
require 'active_support/core_ext/enumerable'
require 'active_support/core_ext/object/try'
require 'active_support/descendants_tracker'
module ActiveModel
# == Active \Model Observers Activation
@ -49,7 +48,7 @@ module ActiveModel
# end
#
# ORM.observers = :cacher, :garbage_collector
# ORM.observers # => [:cacher, :garbage_collector]
# ORM.observers # => [:cacher, :garbage_collector]
# ORM.observers.class # => ActiveModel::ObserverArray
def observers
@observers ||= ObserverArray.new(self)
@ -328,8 +327,8 @@ module ActiveModel
# Returns the class observed by default. It's inferred from the observer's
# class name.
#
# PersonObserver.observed_class # => Person
# AccountObserver.observed_class # => Account
# PersonObserver.observed_class # => Person
# AccountObserver.observed_class # => Account
def observed_class
name[/(.*)Observer/, 1].try :constantize
end

View file

@ -1,9 +1,6 @@
require 'active_support/core_ext/array/extract_options'
require 'active_support/core_ext/hash/keys'
require 'active_support/core_ext/hash/except'
require 'active_model/errors'
require 'active_model/validations/callbacks'
require 'active_model/validator'
module ActiveModel

View file

@ -1,5 +1,3 @@
require 'active_support/callbacks'
module ActiveModel
module Validations
# == Active \Model Validation Callbacks
@ -85,8 +83,8 @@ module ActiveModel
# person = Person.new
# person.name = ''
# person.valid? # => false
# person.status # => false
#  person.name = 'bob'
# person.status # => false
# person.name = 'bob'
# person.valid? # => true
# person.status # => true
def after_validation(*args, &block)