You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Seoung Ho Jeong edited this page Nov 28, 2019
·
3 revisions
If a user is not confirmable you can redirect to a specific page.
This example shows how to redirect to unconfirmed email information page when unconfirmed user want's to login.
# written on lib/devise/custom_failure_app.rb
class CustomFailureApp < Devise::FailureApp
def redirect_url
if warden_message == :unconfirmed
return email_confirm_path(email: params[:user][:email])
end
super
end
# You need to override respond
def respond
if warden_message == :unconfirmed
Rails.logger.debug "redirect"
return redirect
end
super
end
end
And add the following in config/initializers/devise.rb:
config.warden do |manager|
manager.failure_app = CustomFailureApp
end
If you're getting an uninitialized constant CustomFailureApp error, and you've put the CustomFailureApp class under your /lib directory, make sure to autoload your lib files in your application.rb file, like below