编辑simpleform语言环境以启用自定义错误消息

时间:2016-05-09 14:28:13

标签: ruby-on-rails simple-form

我在app中使用simple_form构建了一个表单。我想要做的是将我的错误消息编辑为与默认值略有不同的内容。我正在处理我的simple_form.en.yml文件,我认为这可能是我的问题发生的地方。

凭借我所拥有的,我不确定我是否理解设置文件中的确切内容,我希望有人可以查看我的内容并告诉我去哪里。

我的模型是这样的(这是我的整个模型)

class FormSubmission < ActiveRecord::Base
  after_create :email_sales

  validates :first_name, :last_name, :organization, :email, :phone, :recognition, :inquiry, presence: true

  private

  def email_sales
    FormSubmissionMailer.update_sales(self).deliver_now
  end
end

以下是我的观点之一

= simple_form_for @form_submission do |f|

  .fieldSet.span8
    .field.reco
      = f.input :first_name, input_html: { class: "formStyling" }, label: "First name", required: false

最后,在我的simple_form.en.yml文件中,我有这个

en:
  activerecord:
    errors:
      models:
        formsubmission:
          attributes:
            email:
              blank: "cannot be empty"

1 个答案:

答案 0 :(得分:2)

Simple_form对验证错误消息I18n没有什么特别之处,并且将所有工作都留给默认的Rails I18n处理。 simple_form.en.yml本地化文件仅处理显示表单及其元素(标签,提示等,请参阅docs)的各种选项,与此无关错误消息。

因此,如果您需要设置错误消息本地化,请查看official Rails guide on I18n。实际上,如果您将错误消息本地化移动到英语的默认Rails语言环境文件中,我认为您的simple_form.en.yml示例可能有效:config/locales/en.yml