2017-10-18 21 views
1

lorsque les signes de l'utilisateur jusqu'à Concevoir, je dois le rediriger vers une vue où il peut choisir ce type d'utilisateur qu'il veut être, comme:Devise - rediriger l'utilisateur d'intervenir après vue signé

link_to 'TypeA', new_type_a_path.

link_to 'TypeB', new_type_b_path.

link_to 'TypeC', new_type_c_path.

Comment configurer cette route? Je sais que je peux utiliser:

class Users::RegistrationsController < Devise::RegistrationsController 
    protected 
    def after_sign_up_path_for(resource) 
     signed_in_root_path(resource) 
    end 

Mais son été pendant que je travaillais avec RoR, alors ne me souviens pas - dois-je créer un contrôleur juste pour ce point de vue?

Répondre

1

Vous pouvez créer une vue, où vous placez vos trois liens dans l'ordre que l'utilisateur peut choisir.

La méthode d'assistance after_sign_up_path_for vous permet de spécifier un URI ou un préfixe d'itinéraire, de sorte que vous pouvez créer une entrée pour ce point de vue et l'utiliser dans cette méthode, comme:

# views/registrations/choices.html.erb 
<%= link_to 'TypeA', new_type_a_path %> 
<%= link_to 'TypeB', new_type_b_path %> 
<%= link_to 'TypeC', new_type_c_path %> 

# config/routes.rb 
get 'choose', to: 'registrations_controller#choices', as: :choices 

# registrations_controller.rb 
def after_sign_up_path_for(resource) 
    choices_path 
end