неопределенная локальная переменная или метод `resource_class’

#ruby-on-rails #devise #devise-confirmable #ruby-on-rails-4.1

#ruby-on-rails #разработать #разработка-подтверждаемая #ruby-on-rails-4.1

Вопрос:

Разработка Windows 8.1 Ruby 2.0 Rails 4.1

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

Ссылка в электронном письме следующая:

 http://localhost:3000/confirmation?confirmation_token=2RSshr4nKyL3FUqsvxc1 
  

Когда я нажимаю на нее, я получаю следующую ошибку:

 undefined local variable or method `resource_class' for #<ConfirmationsController:0x00000006f7ba88>
  

и это указывает на строку 14 контроллера конфигураций, которая является следующей строкой:

 def show
  self.resource = resource_class.confirm_by_token(params[:confirmation_token])
  

Есть идеи?

Комментарии:

1. есть ли у вас имя поля resource_class в вашей confirmations таблице? опубликуйте таблицу подтверждений

2. Нет таблицы подтверждений. Это Devise и пользовательская таблица

3. ОК. где resource_class определено? сообщение об ошибке означает, что у ConfirmationsController нет resource_class атрибута

4. унаследовали ли вы свой контроллер подтверждений (скажем User::ConfirmationsController ) с Devise::ConfirmationsController помощью?

5. ravi1991: Я предполагал, что установщик devise позаботился бы об этом, но по какой-то причине контроллер подтверждений унаследовал контроллер приложения. Я изменил его, и теперь он работает нормально. Если вы измените это на ответ, я приму его.