Überschreiben Entwickeln, die eine Eintragung controller zu ermöglichen, für die ein redirect nach erfolgreicher sign_up getan wurde

Ich habe alle über dem Platz, und fand eine Menge info... aber nichts funktioniert für mich, und ich verstehe es nicht 🙁

Weiß ich, dass Sie annehmen, um das überschreiben der Eintragung controller, wie diese:

class Users::RegistrationsController < Devise::RegistrationsController

def after_sign_up_path_for(resource)
  authors_waiting_path
end 

end

Dann nach dem Beispiel zeigte sich von Tony Amoyal http://www.tonyamoyal.com/2010/07/28/rails-authentication-with-devise-and-cancan-customizing-devise-controllers/, ich sollte das ändern, meine Routen zu aktualisieren, der Zugriff auf den neuen controller:

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

Ja, ich habe etwas, was ein bisschen seltsam hier, weil ich bin, fangen einige spezifische Pfad, senden Sie auf der Registrierung-Seite, dies ermöglicht es mir, effektiv 2 Registrierung-Szenario.
Ich bemerkte was ich vor hatte, ich hatte überschrieben die Anmeldung controller.

Selbst mit all diesen und meine authors_waiting_path ein Gültiger Pfad, es hält nur auf gehen, um die sign-in-Seite nach der Registrierung 🙁

Das ist wirklich frustrierend.

Alex

edit: ich fand auch diese auf das Gerät-wiki: https://github.com/plataformatec/devise/wiki/How-To:-Redirect-after-registration-(sign-up)

Aber ich habe keine Ahnung, wo Sie definieren diese create-Methode ? soll ich das überschreiben der session-controller ???

edit 2:

Lege ich eine dummy-überschreiben des controller:

  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

Und ich habe nie "war hier" in meinen logs.... Ich habe wirklich das Gefühl, dass es völlig ignoriert das überschreiben... ich muss etwas falsch machen 🙁

Welche version von rails verwenden Sie? Welche version ausdenken?
Rails 3.0.3 und entwerfen 1.1.5, Letzte version von beiden, falls ich richtig bin

InformationsquelleAutor Alex | 2011-01-24

Schreibe einen Kommentar