Organisation von Routen in Rails - restful_authentication, Sitzung und / login
-
03-07-2019 - |
Frage
ich mit der Strecke Setup für eine Rails-Anwendung am kämpfen. Ich habe restful_authentication installiert und folgte meist den Anweisungen. Ich habe die Routen auf diese Weise eingerichtet:
map.login '/login', :controller => 'sessions', :action => 'new'
map.logout '/logout', :controller => 'sessions', :action => 'destroy'
map.resource :session
Wenn Sie nicht angemeldet sind, werden Sie umgeleitet http: // localhost: 3000 / session / neue .
Es macht eine Art von Sinn, wie der Code in lib / authenticated_system.rb sagt redirect_to new_session_path
.
Aber ich dachte, die Routen-Mapping sollte in beiden Richtungen arbeiten (Code URL und URL-Code). Kann jemand erklären? Dank
Lösung
map.resource :session
schafft ein paar benannten Ressourcen für Sie einschließlich new_session_path
(siehe Action :: Ressourcen ).
map.login
und map.logout
sind nur Helfer Routen Ihren Code leichter verständlich zu machen. map.login
verweist auf die gleiche Controller / Aktion Combo (die login_path
erzeugt) als new_session_path
tut, es ist nur einfacher, auf einem Blick zu erinnern, was sie tut.