lib/valle/hooks.rb in valle-0.0.3 vs lib/valle/hooks.rb in valle-0.1.0

- old
+ new

@@ -18,11 +18,13 @@ def extend_inherited_method ActiveRecord::Base.class_eval do class << self def inherited_with_valle_validators(subclass) inherited_without_valle_validators(subclass) - if Valle.can_process_model?(subclass.model_name) + if (Valle.can_process_model?(subclass.model_name) && + self == ActiveRecord::Base && + subclass != ActiveRecord::SchemaMigration) Valle::Hooks.extend_ar_validations_valid_method(subclass) end end alias_method_chain :inherited, :valle_validators @@ -35,21 +37,10 @@ # # @param [ActiveRecord::Base] subclass the AR::Base child class # @note ActiveRecord::Validations should be defined at this point # def extend_ar_validations_valid_method(subclass) - subclass.instance_eval do - cattr_accessor :valle_validators - end - - subclass.class_eval do - def valid_with_valle_validators?(context = nil) - self.class.valle_validators ||= Valle::Manager.add_validators(self.class) - valid_without_valle_validators?(context) - end - - alias_method_chain :valid?, :valle_validators - end + Valle::Manager.add_validators(subclass) end end end end