2017-10-02 2 views
0

iam mit einer Umleitung in einer meiner Klassen, aber ich bin ein wenig verwirrt über die URL, die zurück an den Benutzer gesendet wird.Rails Redirect URL ID hinzufügen?

Nach meinem Benutzer angemeldet ist, ist er wie folgt umgeleitet:

redirect_to :controller => "mycontroller", :action => "myaction" 

Wenn ich die URL aussehen, die Rückseite ist senden, ich sehe die folgenden:

http://l1vmgt08:8085/mycontroller/myaction/id 

Aufgrund der „id“ in der URL, musste ich es auch hinzufügen, in meinen Routen, darunter die „id“:

match "mycontroller/myaction/id", :to => "mycontroller#myaction", :via => :get 

ich nicht, warum die redirec t fügt die "id" zur URL hinzu. Ich denke, das ist ein Standard-Rails, aber ich verstehe nicht, wo der Vorteil ist. Da ich nur die Aktion ausführen möchte, brauche ich keine ID, und es gibt keine zur Verfügung gestellt ..

Ich denke, iam fehlt ein kritischer Punkt darüber, wie Routing funktioniert, aber ich finde keine zusätzlichen Informationen, die dieses Verhalten erklären ..

Vielen Dank im Voraus :)

edit:

hier ist die Login-Aktion:

def login_attempt 
authorized_user = User.authenticate(params[:username_or_email],params[:login_password]) 
if authorized_user 
    session[:user_id] = authorized_user.id 
    redirect_to :controller => "webqipparser", :action => "parser_formular" 

else 
    render "login" 
end 

Ende

+1

Lesen Sie diesen http://guides.rubyonrails.org/routing.html –

+0

i habe das schon gemacht, aber ich finde keine Antwort auf meine Frage. Vielleicht sehe ich einfach nicht die Verbindung zwischen den Erklärungen und brauche jemanden, um darauf hinzuweisen. Ich wäre wirklich dankbar, wenn jemand das tun könnte. – Bastian

+0

Könnten Sie den Code der Aktion einfügen, die die Anmeldung von Benutzern behandelt? – bitsapien

Antwort

0

Einer meiner Kollegen hat es behoben. Die Lösung ist nicht auf einen Controller/Aktion zu umleiten, sondern auf einen Pfad, da will ich einfach nur die Aussicht machen ..

redirect_to controller_view_path