Rai*_*ing 7 ruby-on-rails internationalization
我在翻译文件中定义了翻译的属性和模型名称,Modelname.human_attribute_name(...)返回正确翻译的属性名称,但错误消息中的属性名称未翻译.需要翻译错误消息中的属性名称是什么?
Ian*_*ell 15
从主题指南中,您需要使用模型名称和属性名称正确设置本地化文件:
en:
activerecord:
models:
user: Dude
attributes:
user:
login: "Handle"
Run Code Online (Sandbox Code Playgroud)
由于这是YAML,请确保所有"标签"实际上都是两个软空间.然后,你可以把他们救出来与User.human_name和User.human_attribute_name(:login).
我没有把它当作福音 - 可能有一个错误.我测试了它,它工作正常.我创建了一个以Model属性命名的模型title.以下是我的fr.yml文件片段config/locales:
fr:
activerecord:
models:
model: "Sumfink"
attributes:
model:
title: "Tiltile"
Run Code Online (Sandbox Code Playgroud)
这是相关的视图代码:
<h1>New <%= Model.human_name %></h1>
<% form_for(@model) do |f| %>
<%= f.error_messages %>
<%= Model.human_attribute_name("title") %><br />
<%= f.text_field :title %>
<%= f.error_message_on :title %>
...
Run Code Online (Sandbox Code Playgroud)
以及正确翻译输出的屏幕截图:http: //screencast.com/t/et5FhVe1Gp