mirror of
https://github.com/github/rails.git
synced 2026-04-26 03:00:59 -04:00
Don't need to pass attr_name to evaluate_attribute_method anymore
This commit is contained in:
@@ -72,7 +72,7 @@ module ActiveRecord
|
||||
if respond_to?(generate_method)
|
||||
send(generate_method, name)
|
||||
else
|
||||
evaluate_attribute_method(name, "def #{method_name}(*args); attribute#{suffix}('#{name}', *args); end", method_name)
|
||||
evaluate_attribute_method("def #{method_name}(*args); attribute#{suffix}('#{name}', *args); end", method_name)
|
||||
end
|
||||
end
|
||||
end
|
||||
@@ -110,16 +110,16 @@ module ActiveRecord
|
||||
end
|
||||
|
||||
# Evaluate the definition for an attribute related method
|
||||
def evaluate_attribute_method(attr_name, method_definition, method_name)
|
||||
def evaluate_attribute_method(method_definition, method_name)
|
||||
generated_methods << method_name
|
||||
|
||||
begin
|
||||
class_eval(method_definition, __FILE__, __LINE__)
|
||||
rescue SyntaxError => err
|
||||
generated_methods.delete(attr_name)
|
||||
generated_methods.delete(method_name)
|
||||
if logger
|
||||
logger.warn "Exception occurred during reader method compilation."
|
||||
logger.warn "Maybe #{attr_name} is not a valid Ruby identifier?"
|
||||
logger.warn "Maybe #{method_name} is not a valid Ruby identifier?"
|
||||
logger.warn err.message
|
||||
end
|
||||
end
|
||||
|
||||
@@ -40,7 +40,7 @@ module ActiveRecord
|
||||
private
|
||||
# Define read method for serialized attribute.
|
||||
def define_read_method_for_serialized_attribute(attr_name)
|
||||
evaluate_attribute_method attr_name, "def #{attr_name}; unserialize_attribute('#{attr_name}'); end", attr_name
|
||||
evaluate_attribute_method "def #{attr_name}; unserialize_attribute('#{attr_name}'); end", attr_name
|
||||
end
|
||||
|
||||
# Define an attribute reader method. Cope with nil column.
|
||||
@@ -55,7 +55,7 @@ module ActiveRecord
|
||||
if cache_attribute?(attr_name)
|
||||
access_code = "@attributes_cache['#{attr_name}'] ||= (#{access_code})"
|
||||
end
|
||||
evaluate_attribute_method attr_name, "def #{symbol}; #{access_code}; end", symbol
|
||||
evaluate_attribute_method "def #{symbol}; #{access_code}; end", symbol
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
@@ -25,7 +25,7 @@ module ActiveRecord
|
||||
@attributes_cache['#{attr_name}'] = time.acts_like?(:time) ? time.in_time_zone : time
|
||||
end
|
||||
EOV
|
||||
evaluate_attribute_method attr_name, method_body, attr_name
|
||||
evaluate_attribute_method method_body, attr_name
|
||||
else
|
||||
super
|
||||
end
|
||||
@@ -44,7 +44,7 @@ module ActiveRecord
|
||||
write_attribute(:#{attr_name}, time)
|
||||
end
|
||||
EOV
|
||||
evaluate_attribute_method attr_name, method_body, "#{attr_name}="
|
||||
evaluate_attribute_method method_body, "#{attr_name}="
|
||||
else
|
||||
super
|
||||
end
|
||||
|
||||
@@ -10,7 +10,7 @@ module ActiveRecord
|
||||
module ClassMethods
|
||||
protected
|
||||
def define_attribute_method=(attr_name)
|
||||
evaluate_attribute_method attr_name, "def #{attr_name}=(new_value); write_attribute('#{attr_name}', new_value); end", "#{attr_name}="
|
||||
evaluate_attribute_method "def #{attr_name}=(new_value); write_attribute('#{attr_name}', new_value); end", "#{attr_name}="
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
Reference in New Issue
Block a user