У меня сразу несколько вопросов:
Добавил в Devise атрибуты name (string) и phone (integer). При отправке формы выдает ошибки "Name can't be blank" и "Phone can't be blank", хотя поля заполнены.
Как заменить лэйблы (например, перевести на русский)? Когда меняю :name на :ФИО - все нормально, но когда меняю остальные - выдает ошибку.
Сама форма:
<%= form_for(resource, :as => resource_name,
:url => registration_path(resource_name),
:html => { :role => 'form'}) do |f| %>
Регистрация
<%= devise_error_messages! %><%= f.text_field :name, autofocus: true %>
<%= f.email_field :email %>
<%= f.text_field :phone %>
Ответ
Добавил в Devise атрибуты name (string) и phone (integer). При отправке формы выдает ошибки "Name can't be blank" и "Phone can't be blank", хотя поля заполнены.
Скорее всего, вы наступили на те же грабли, что и я когда-то, забыв про Strong Parameters.
Как заменить лэйблы (например перевести на русский)? Когда меняю :name на :ФИО - все нормально, но когда меняю остальные - выдает ошибку.
Разумеется, выдаёт. Надо 'ФИО', а не :ФИО и так далее. С двоеточия начинаются ключи, а вам надо задать конкретное строковое значение. Однако, если вы собираетесь именно переводить, то лучше сразу начинать использовать API интернационализации
Комментариев нет:
Отправить комментарий