ActiveRecord错误消息:字段的翻译

Dan*_*ier 5 forms activerecord ruby-on-rails internationalization

我已经使用http://guides.rubyonrails.org/i18n.html中指定的指令 来翻译我的模型的字段,但标签没有翻译.我做错了什么.

我有一个User该领域的模型,name我想把它翻译成巴西葡萄牙语(pt_br),所以我得到了我的pt_br.yml:

pt_br:
    errors: "Erro!"
    activerecord:
        models:
            user: "Usuário"
        attributes:
            name: "Nome"
            address: "Endereço"
        errors:
            template:
                body: "Por favor, corrija os campos assinalados"
                header: "Dados inválidos"
            messages:
                blank: "é obrigatório"
                taken: "já existe"
                too_short: "incompleto"
Run Code Online (Sandbox Code Playgroud)

当我到达带有表单的页面时:

<% form_for(@usuario) do |f| %>
<%= f.error_messages %>
<%= f.label :name %>
<%= f.text_field :name %>
<% end %>
Run Code Online (Sandbox Code Playgroud)

我将这个字段标记为"名称",而不是像我希望的那样"Nome".我也有

config.i18n.default_locale = :pt_br 
Run Code Online (Sandbox Code Playgroud)

在我的环境中.rb

缺什么?

ere*_*ite 5

您需要命名您的属性user,即:

pt_br:
  activerecord:
    attributes:
      user:
        name: "Nome"
        address: "Endereço"
Run Code Online (Sandbox Code Playgroud)

您还可以安装i18n_label插件以自动翻译标签.