Возможно ли, что установка Devise 1.1.8 в приложении Rails 3.0.3 каким-то образом мешает нормальной проверке в не-devise моделях / контроллерах?
В моем приложении есть модель User, связанная с Devise. Кроме того, есть модель пациента с атрибутом: мобильный. (Мы собираем номер мобильного телефона для приложения здравоохранения.)
класс Пациент
# validates_presence_of: mobile,: message => "должно быть предоставлено"
конец
Выше выдается следующая ошибка:
У вас есть нулевой объект, когда вы этого не ожидали!
Возможно, вы ожидали экземпляр ActiveRecord :: Base.
Произошла ошибка при оценке nil.errors
- и -
Извлеченный источник (вокруг строки № 12):
9: <h2><%= pluralize(@patient.errors.count, "error") %> prohibited this subscriber from being saved:</h2>
10:
11: <ul>
12: <% @subscriber.errors.full_messages.each do |msg| %>
13: <li><%= msg %></li>
14: <% end %>
15: </ul>
Кстати, Devise прекрасно работает при отображении сообщений об ошибках, когда новый пользователь делает ошибку (например, не предоставляя пароль).
Кроме того, удаление: message => «должен быть предоставлен» приводит к точно такой же ошибке.
Спасибо.