Table of Contents
I bumped into the following error when I was creating API program. The origin was devise gem.
NoMethodError (undefined method `failure_app’ for nil:NilClass)
Environment
- Ruby 2.2.3p173
- Rails 4.2.4
- devise 3.5.2
Origin
I used sign_in
method for unauthorized user.
The API in construction, we have to make unauthorized user able to login, so I wrote logging in procedure for all users, including unauthorized users. Then, devise and warden rejected unauthorized user and raised error.
Solution
Write the following setting into config/initializer/devise.rb
.
Or write the following method into the model class that is used by devise for authentication. User class for example.
I recommend latter solution.
confirmation_period_valid?
confirmation_period_valid?
method is defined at the module Devise::Models::Confirmable
of devise gem.