How can I create an after-confirmation redirect in Devise?
Before I added the confirmation module
the custom after_sign_up_path
worked fine for the first time login/signup
but now when I click the confirmation link in the email it redirects to the path I set for the after-login path (user profile).
My goal is to create a form wizard and "getting started" page to collect additional information. The obvious caveat being that this redirect will only happen one time, upon confirmation.
I tried some other solutions that have been posted on Stack Overflow but none of them seem to work any longer.
A less intrusive way of achieving this might be just overriding the after_confirmation_path_for
method of Devise::ConfirmationsController
.
Create a new confirmations_controller.rb
in app/controllers
directory:
class ConfirmationsController < Devise::ConfirmationsController private def after_confirmation_path_for(resource_name, resource) your_new_after_confirmation_path end end
In config/routes.rb
, add this line so that Devise will use your custom ConfirmationsController
. This assumes Devise operates on users
table (you may edit to match yours).
devise_for :users, controllers: { confirmations: 'confirmations' }
Restart the web server, and you should have it.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With