Miré por todos lados y encontré mucha información ... pero nada funciona para mí y no lo entiendo :(Reemplazando el controlador de registro de Devise para permitir una redirección después de que se haya realizado un registro exitoso
sé que se supone que debe reemplazar el controlador de registro, así:
class Users::RegistrationsController < Devise::RegistrationsController
def after_sign_up_path_for(resource)
authors_waiting_path
end
end
a continuación, siguiendo el ejemplo mostrado por Tony Amoyal http://www.tonyamoyal.com/2010/07/28/rails-authentication-with-devise-and-cancan-customizing-devise-controllers/, se supone que debo cambiar mis rutas para actualizar el acceso al nuevo controlador :
devise_for :users, :controllers => { :registrations => "users/registrations" } do
#get '/author/sign_up', :to => 'devise/registrations#new'
#get '/client/sign_up', :to => 'devise/registrations#new'
get '/author/sign_up', :to => 'users/registrations#new'
get '/client/sign_up', :to => 'users/registrations#new'
end
Sí, tengo algo un poco extraño aquí, porque estoy atrapando una ruta específica para enviarlos a la página de registro, esto me permite crear efectivamente 2 escenarios de registro. Comenté lo que tenía antes de anular el controlador de registro.
Aún con todo esto y mi authors_waiting_path ser una ruta válida, que sólo mantiene en ir a la página de registro después de Registrarse :(
Esto es muy frustrante.
Alex
edición : también se encuentra presente en el legado wiki: https://github.com/plataformatec/devise/wiki/How-To:-Redirect-after-registration-(sign-up)
Pero no tengo ni idea de dónde definir este método de crear debería reemplazar el controlador de la sesión ???
?editar 2:
Puedo poner una anulación de relleno de las controlador:
class Pouets::RegistrationsController < Devise::RegistrationsController
def after_sign_up_path_for(resource)
authors_waiting_path
end
def new
super
end
def create
puts "was here"
super
end
def edit
super
end
def update
super
end
def destroy
super
end
def cancel
super
end
end
Y nunca la "era aquí" en los registros de mi .... Realmente tengo la sensación de que está ignorando totalmente la anulación ... debo estar haciendo algo mal :(
¿Qué versión de rieles estás usando? ¿Qué versión de idear? –
Rails 3.0.3 y diseñar 1.1.5, última versión de ambos si estoy correcto – Alex