class ActiveModel::Validations::AcceptanceValidator::LazilyDefineAttributes
def initialize(attribute_definition)
def initialize(attribute_definition) define_method(:respond_to_missing?) do |method_name, include_private = false| super(method_name, include_private) || attribute_definition.matches?(method_name) end define_method(:method_missing) do |method_name, *args, &block| if attribute_definition.matches?(method_name) attribute_definition.define_on(self.class) send(method_name, *args, &block) else super(method_name, *args, &block) end end end