Search code examples
ruby-on-railsdeviseruby-on-rails-5rails-routing

overriding devise routes works for sessions but not registrations


I have the following code in routes.rb:

devise_for :admin_users, controllers: {
  registrations: 'tap/registrations',
  sessions: 'tap/sessions',
  passwords: 'tap/passwords',
  confirmations: 'tap/confirmations'  
}

The code above creates the following routes:

        new_admin_user_session GET    /admin_users/sign_in(.:format)    tap/sessions#new
            admin_user_session POST   /admin_users/sign_in(.:format)    tap/sessions#create
    destroy_admin_user_session DELETE /admin_users/sign_out(.:format)   tap/sessions#destroy
           admin_user_password POST   /admin_users/password(.:format)   tap/passwords#create
       new_admin_user_password GET    /admin_users/password/new(.:format)  tap/passwords#new
      edit_admin_user_password GET    /admin_users/password/edit(.:format) tap/passwords#edit
                               PATCH  /admin_users/password(.:format)   tap/passwords#update
                               PUT    /admin_users/password(.:format)   tap/passwords#update

For some reason, the registrations and confirmations controller are not appearing in routes. How do I fix this?


Solution

  • inside model (admin_users.rb) have you added this line below, probably this link can help you more

    devise :database_authenticatable, :registerable