Похоже, вы можете передать сообщение Proc
. Когда вы делаете это, вы получаете два параметра:
- Символ вдоль линий
:activerecord.errors.models.user.attributes.name.taken
- Хеш выглядит примерно так: {{model => "Пользователь",: attribute => "Имя",: значение => "Мое имя"}
Таким образом, если вы разрешите два параметра в процедуре, вы можете использовать элемент attributes[:value]
, чтобы получить имя, которое было использовано:
validates_uniqueness_of :name,
:message => Proc.new { |error, attributes|
"#{attributes[:value]} has already been taken."
}