Ruby on rails 如何将数据库列名的翻译显示为视图中的表标题,Rails 3
我有一个名为Ruby on rails 如何将数据库列名的翻译显示为视图中的表标题,Rails 3,ruby-on-rails,ruby,ruby-on-rails-3,internationalization,rails-i18n,Ruby On Rails,Ruby,Ruby On Rails 3,Internationalization,Rails I18n,我有一个名为User的模型,其属性名为current\u sign\u in\u at。在我的en.yml文件中,我有这样的显示名称 en-GB: activerecord: attributes: user: current_sign_in_at: "Last sign-in" …这允许我使用=f.label:current\u sign\u in\u at显示所需的表单标签(“上次登录”) 但是,如何对表头使用相同的翻译,即不在表单中 %th= :c
User
的模型,其属性名为current\u sign\u in\u at
。在我的en.yml文件中,我有这样的显示名称
en-GB:
activerecord:
attributes:
user:
current_sign_in_at: "Last sign-in"
…这允许我使用=f.label:current\u sign\u in\u at
显示所需的表单标签(“上次登录”)
但是,如何对表头使用相同的翻译,即不在表单中
%th= :current_sign_in_at
您可以使用静态方法“human\u attribute\u name” 就你而言:
%th= User.human_attribute_name :current_sign_in_at
(使用User.human\u name
在en.activerecord.models.User
中显示用I18n翻译的型号名称)
希望这有帮助 国际化表格标题的另一个选项是 这将允许您编写erb代码,如:
<%= table_for @user do |table| %>
<% table.column :current_sign_in_at %>
<% end %>
太好了!这正是我所希望的。非常感谢@Yoshiji先生!