自定义验证消息

时间:2011-03-15 13:32:41

标签: ruby-on-rails ruby ruby-on-rails-3

我在获取自定义消息的同时仍然在表单中的字段上获取错误类。

例如:

errors.add(:first_name, 'must not be blank')

当名字为空白时,它会在无法提交表格时添加field_with_errors的div和“名字不能为空”的消息。

errors.add(:base, 'First name must not be blank')

无法突出显示字段,但允许完全自定义的消息。

有没有(更简单的?)方法让rails将类添加到first_name字段,同时还有一个完全可自定义的消息?

1 个答案:

答案 0 :(得分:1)

您可以通过更改I18n本地化文件(例如config / locales / en.yml)中的属性来自定义属性的显示方式,如下所示:

en:
  activerecord:
    attributes:
      model_name:
        first_name: "First Name Alternative"

或者,通过覆盖ActiveRecord::Base#human_attribute_name,即使为您的属性提供空白humanize,也不会为错误添加前缀。