Из Guide по теме вам потребуется правильно настроить файл локализации с именами моделей и атрибутов:
en:
activerecord:
models:
user: Dude
attributes:
user:
login: "Handle"
Поскольку это YAML, убедитесь, что все ваши "вкладки" на самом деле являются двумя мягкими пробелами. Тогда вы можете получить их с User.human_name
и User.human_attribute_name(:login)
.
Я не принял это за Евангелие - там могла быть ошибка. Я проверил это, и он отлично работает. Я сделал модель с именем Model
с атрибутом title
. Вот фрагмент моего fr.yml
файла в config/locales
:
fr:
activerecord:
models:
model: "Sumfink"
attributes:
model:
title: "Tiltile"
Вот соответствующий код вида:
<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 %>
...
И скриншот правильно переведенного вывода: http://screencast.com/t/et5FhVe1Gp