Придумать не заполняющий ресурс. Ошибки в входе - PullRequest
4 голосов
/ 02 апреля 2012

Я использую самоцвет Devise, и на странице входа я ожидаю, что, если я ничего не напишу, это должно привести к ошибке. Сначала я думал, что не показываю ошибку, но после этого:

<%= resource.errors.inspect %>

После входа без каких-либо значений я получаю следующее:

#<ActiveModel::Errors:0x000000048ac1a0 @base=#<User id: nil, email: "", encrypted_password: "", reset_password_token: nil, reset_password_sent_at: nil, remember_created_at: nil, sign_in_count: 0, current_sign_in_at: nil, last_sign_in_at: nil, current_sign_in_ip: nil, last_sign_in_ip: nil, created_at: nil, updated_at: nil>, @messages={}>

Нет сообщений вообще.

Я не изменял модель или представление Devise по умолчанию, поэтому это довольно странно, потому что при регистрации и забывании пароля я правильно получаю ошибки.

Есть мысли?

Ответы [ 2 ]

5 голосов
/ 02 апреля 2012

Разработка сообщений об ошибках для входа в систему устанавливается во флэш-хеше.Попробуйте добавить это в приложение макет:

<%- flash.each do |name, msg| -%>
  <%= content_tag :div, msg, :id => "flash_#{name}" if msg.is_a?(String) %>
<%- end -%>
0 голосов
/ 02 апреля 2012

Немного более удобный метод - <%= devise_error_messages! %> ( документация здесь )

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...