Fix #6591. If a field with timezone isn't changed, we don't call will_change!.

This commit is contained in:
kennyj 2012-06-04 03:12:21 +09:00
parent cfc7f602bf
commit 635032fe3b

@ -57,8 +57,9 @@ def #{attr_name}=(original_time)
time = time.is_a?(String) ? Time.zone.parse(time) : time.to_time rescue time time = time.is_a?(String) ? Time.zone.parse(time) : time.to_time rescue time
end end
time = time.in_time_zone rescue nil if time time = time.in_time_zone rescue nil if time
changed = read_attribute(:#{attr_name}) != time
write_attribute(:#{attr_name}, original_time) write_attribute(:#{attr_name}, original_time)
#{attr_name}_will_change! #{attr_name}_will_change! if changed
@attributes_cache["#{attr_name}"] = time @attributes_cache["#{attr_name}"] = time
end end
EOV EOV