Как я могу отобразить перевод имени столбца базы данных в виде заголовка таблицы в представлении, Rails 3

StackOverflow https://stackoverflow.com//questions/12712397

Вопрос

У меня есть модель под названием User с атрибутом под названием current_sign_in_at.В моем ru.yml file у меня есть отображаемое имя как таковое…

en-GB:
  activerecord:
    attributes:
      user:
        current_sign_in_at: "Last sign-in"

…что позволяет мне отображать желаемую метку формы («Последний вход»), используя = f.label :current_sign_in_at.

Но как мне использовать этот же перевод для заголовка таблицы, т.е.не в форме?

%th= :current_sign_in_at
Это было полезно?

Решение

Вы можете использовать статический метод «human_attribute_name», См. документ здесь, на доке API.

В твоем случае:

%th= User.human_attribute_name :current_sign_in_at

(использовать User.human_name для отображения названия модели, переведенного с помощью I18n, в en.activerecord.models.user)

Надеюсь это поможет!

Другие советы

Другой вариант интернационализированных заголовков таблиц — это таблица_для драгоценного камня.

Это позволит вам написать код erb, например:

<%= table_for @user do |table| %>
  <% table.column :current_sign_in_at %>
<% end %>
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top