У меня есть сайт, который подается в двух вариантах: английском и французском. Вот код
app/views/user/register.html.erb
-----------------
<% form_for .....>
<%= f.text_field :first_name %>
<% end %>
app/models/user.rb
------------------
class User < ActiveRecord::Base
validates_presence_of :first_name
end
Теперь для отображения сообщения об ошибке в случае, если сайт обслуживается во французской версии, у меня есть
app/config/locales/fr.yml
-------------------------
activerecord:
errors:
messages:
empty: "ne peut pas être vide"
Поэтому, если кто-то не заполняет имя, валидатор берет имя поля и добавляет пользовательское сообщение для пустого предложения, давая
"First name ne peut pas être vide"
, что неверно, потому что «Имя» на французском означает «Prénom», следовательно, оно должно быть
"Prénom ne peut pas être vide"
Пожалуйста, может кто-нибудь предложить способ достижения желаемого результата.