heartcombo--simple_form/lib/simple_form/components/errors.rb

46 lines
897 B
Ruby
Raw Normal View History

module SimpleForm
module Components
module Errors
def error
2011-09-04 10:00:20 +00:00
error_text if has_errors?
end
2011-09-03 11:01:41 +00:00
def has_errors?
object && object.respond_to?(:errors) && errors.present?
end
protected
2011-09-04 10:00:20 +00:00
alias :enabled_error :error
def disabled_error
nil
end
def error_text
2011-04-27 19:58:59 +00:00
if options[:error_prefix]
options[:error_prefix] + " " + errors.send(error_method)
else
errors.send(error_method)
end
end
def error_method
options[:error_method] || SimpleForm.error_method
end
def errors
@errors ||= (errors_on_attribute + errors_on_association).compact
end
def errors_on_attribute
2010-08-14 03:19:59 +00:00
object.errors[attribute_name]
end
def errors_on_association
reflection ? object.errors[reflection.name] : []
end
end
end
end