我正在使用 rails 3.1.3 并设计 1.5.3,当我添加destroy_user_session_path
到我的布局文件时,链接不起作用。我可以正常登录,但是当我单击此路径时,出现此错误:
No route matches [GET] "/users/sign_out"
但是,如果我运行 rake 路线,我会看到这条路线:
destroy_user_session DELETE /users/sign_out(.:format)
{:action=>"destroy", :controller=>"devise/sessions"}
所以这条路线显然使用了 DELETE 动词。我可以通过添加来获得工作路径:method => :delete
,但为什么我必须这样做?路线在那里并且已经配置为删除,所以怎么了?