rails-devise - 无法注销

时间:2012-04-14 21:43:53

标签: ruby-on-rails devise routes

我无法测试我的登录信息...'因为我无法注销(还没有注销按钮)。 我能够测试一次,但现在我被“卡住”登录了!

为什么我不能使用
http://localhost:3000/account/sign_out

我收到错误No route matches [GET] "/account/sign_out"

但是rake routes给了我:

         ...
         new_standard_user_session GET    /account/sign_in(.:format)                                      devise/sessions#new
             standard_user_session POST   /account/sign_in(.:format)                                      devise/sessions#create
     destroy_standard_user_session DELETE /account/sign_out(.:format)                                     devise/sessions#destroy    new_standard_user_registration GET    /account/sign_up(.:format)                                      devise/registrations#new
             ...

我的/account/sign_in/account_sign_up网址没问题

1 个答案:

答案 0 :(得分:8)

No route matches [GET] "/account/sign_out"

您尝试通过GET方法访问该链接,但您的路线是DELETE,正如您发布的那样。

destroy_standard_user_session DELETE /account/sign_out(.:format) 

因此,为了实现这一目标,请使用method中的link_to参数(我假设您正在创建与link_to的链接)

像这样的东西

link_to "Sign Out", destroy_standard_user_session_path, :method => :delete

祝你好运