use inheritable hash again as class_attribute doesn't clone hash for subclass

This commit is contained in:
Adam Meehan 2010-09-21 18:26:30 +10:00
parent 8d3ae75b19
commit c8ad4cd525
2 changed files with 3 additions and 2 deletions

View File

@ -5,6 +5,7 @@ module ValidatesTimeliness
module ClassMethods module ClassMethods
def define_timeliness_methods(before_type_cast=false) def define_timeliness_methods(before_type_cast=false)
return if timeliness_validated_attributes.blank?
timeliness_validated_attributes.each do |attr_name, type| timeliness_validated_attributes.each do |attr_name, type|
define_timeliness_write_method(attr_name, type, timeliness_attribute_timezone_aware?(attr_name)) define_timeliness_write_method(attr_name, type, timeliness_attribute_timezone_aware?(attr_name))
define_timeliness_before_type_cast_method(attr_name) if before_type_cast define_timeliness_before_type_cast_method(attr_name) if before_type_cast

View File

@ -5,7 +5,7 @@ module ValidatesTimeliness
included do included do
include ValidationMethods include ValidationMethods
extend ValidationMethods extend ValidationMethods
class_attribute :timeliness_validated_attributes class_inheritable_hash :timeliness_validated_attributes
self.timeliness_validated_attributes = {} self.timeliness_validated_attributes = {}
end end
@ -30,7 +30,7 @@ module ValidatesTimeliness
validated[attr_name] = type validated[attr_name] = type
validated validated
} }
self.timeliness_validated_attributes.update(attributes) self.timeliness_validated_attributes = attributes
validates_with Validator, options validates_with Validator, options
end end