Rails中路由的组织——restful_authentication、session和/login



我正在为Rails应用程序的路由设置而苦苦挣扎。我已经安装了restful_authentication,并且主要按照说明进行操作。我这样设置路线:

map.login '/login', :controller => 'sessions', :action => 'new'
map.logout '/logout', :controller => 'sessions', :action => 'destroy'
map.resource :session

如果您未登录,则会重定向到http://localhost:3000/session/new.这在某种程度上是有意义的,正如lib/authenticated_system.rb中的代码所说的redirect_to new_session_path

但我认为路线映射应该是双向的(代码到URL和URL到代码)。有人能解释一下吗?感谢

map.resource :session为您创建了一些命名资源,包括new_session_path(请参阅ActionController::resources)。

map.loginmap.logout只是使代码更易于理解的辅助路径。map.login(生成login_path)指向与new_session_path相同的控制器/动作组合,只是更容易一眼记住它的作用。

相关内容

  • 没有找到相关文章

最新更新