рельсы 3 с использованием устройства для аутентификации - PullRequest
0 голосов
/ 30 декабря 2010

Я использую Devise в своем приложении Rails 3 для аутентификации.

Мое требование - использовать Имя пользователя для входа, а не email .

Поэтому я изменил файл config / initializers / devise.rb , как показано ниже

config.authentication_keys = [: имя пользователя]

Изменена страница registraion для ввода имени пользователя, адреса электронной почты и пароля при регистрации. Также изменен вид входа в систему, чтобы включить имя пользователя.


Мой выпуск:

Когда я нажимаю Forgot password, отображается поле для ввода email. После того, как я введу «email» и нажму на кнопку «Отправить мне инструкции по сбросу пароля».

Выдает ошибку Username can't be blank.

Где я могу внести изменения, чтобы это исправить?

1 Ответ

4 голосов
/ 30 декабря 2010

Я бы предположил, что authentication_keys установил: username в качестве обязательного поля.

Попробуйте отредактировать приложение / views / devise / passwords / new.html.erb и заменить:

<%= f.label :email %>
<br />
<%= f.text_field :email %>

с:

<%= f.label :username %>
<br />
<%= f.text_field :username %>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...