NoMethodError (неопределенный метод 'active?' Для) - PullRequest
0 голосов
/ 12 августа 2011

Я использую Ruby on Rails 3.0.4 / Devise 1.4.2 / MySQL / Apache / Passenger / FreeBSD

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

models / user.rb:

devise :database_authenticatable, :registerable, :trackable, :recoverable, :confirmable, :validatable, :lockable, :timeoutable

Что это может бытьЛюбые идеи приветствуются.

Ответы [ 3 ]

1 голос
/ 12 августа 2011

Придумайте, насколько я знаю, не поставляется с active? методом.Пожалуйста, попробуйте вместо этого использовать confirmed?, если у вас есть модуль Confirmable.

0 голосов
/ 15 августа 2011

Ответ таков: active? метод работает только для версии Devise менее 1.4, а для версий более новых, чем 1.3 confirmed?.

Я сгенерировал скрипты Devise с помощью Devise 1.1.7, затем обновился до 1.4.2 - и проблема возникла. Я понизил до 1.3.0, и это было лекарство.

0 голосов
/ 12 августа 2011

Я никогда не использовал Devise, но, похоже, Devise ожидает, что таблица пользователей будет иметь логический атрибут "active". Если бы это было так, Rails генерировал бы метод active?.

...