#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 позаботился бы об этом, но по какой-то причине контроллер подтверждений унаследовал контроллер приложения. Я изменил его, и теперь он работает нормально. Если вы измените это на ответ, я приму его.