我正在尝试在rails 3.1(“first_name”)中自定义(翻译)活动记录属性名称。这是我的语言环境文件(config / locales / sv.yml)的开头:
"sv":
activerecord:
models:
employee: "Anställd"
attributes:
employee:
first_name: "Förnamn"
我确信这个文件是由rails使用的,因为在文件中进一步向下更改翻译。 这是表单字段erb代码,应该说“Förnamn”而不是“名字”:
<div class="field">
<%= f.label :first_name %><br />
<%= f.text_field :first_name %>
</div>
在rails控制台中运行Employee.human_attribute_name(:first_name)
会返回“名字”。
非常感谢你
答案 0 :(得分:7)
在Rails 3.1中你也可以这样做:
<% form_for @post do |f| %>
<%= f.label :title %>
<%= f.text_field :title %>
<%= f.submit %>
<% end %>
en:
helpers:
label:
post:
title: 'Customized title'
这种方法与ORM无关,适用于活动模型(例如,使用mongoid)。
答案 1 :(得分:1)
我意识到我在我的sv.yml转换文件中定义了两次activerecord条目,我的属性被覆盖在文件的顶部。它现在有效。