Подтвердить что ты не робот

Изменить имя поля ошибки в Rails

Мне интересно, есть ли способ изменить имя поля для ошибки проверки, с которой он связан. Например, если я отправлю имя (действительно fname в таблице) без каких-либо данных, он будет кричать Fname can't be blank.

Можно ли изменить это на First Name can't be blank?

4b9b3361

Ответ 1

Общая практика теперь - отредактировать locals следующим образом:

# config/locales/en.yml
en:
  activerecord:
    attributes:
      user:
        fname: "First Name"

В вашем сообщении об ошибке теперь будет сказано: "Имя не может быть..."

Для полноты вы получите еще один вариант. Чтобы добавить следующую модель пользователя:

class User < ActiveRecord::Base

  HUMANIZED_ATTRIBUTES = {
    :fname => "First Name"
  }

  def self.human_attribute_name(attr)
    HUMANIZED_ATTRIBUTES[attr.to_sym] || super
  end

end