我正在使用设计进行用户身份验证。在我看来,我已经设置了:
<% if user_signed_in? %>
<li><%= link_to "Log Out", destroy_user_session_path %></li>
<% else %>
<li><%= link_to "Sign In", new_user_session_path %></li>
<% end %>
但是,当我单击Log_Out时,我收到错误:
没有路由匹配 [GET] "/users/sign_out"
但是,当我检查我的耙子路线时,我得到:
devise/sessions#destroy destroy_user_session DELETE /users/sign_out(.:format)
呼吸暂停说的。
<%= link_to "Log Out", destroy_user_session_path, method: :delete %>
默认注销是使用"删除"方法。您的路线还说该方法是"删除"
如果要使用"获取"方法
将 devise.rb 修改为
config.sign_out_via = :get
Baloo是对的,请确保使用:d elete方法。如果您调用
rake routes
您将看到路径和方法。