<%= link_to "Sign Out", destroy_user_session_path,:method => :delete%>
destroy_user_session DELETE /users/logout(.:format) devise/sessions#destroy
路由错误
没有路线匹配[GET]“/ users / logout”
devise_for :users, path_names: {sign_in: "login", sign_out: "logout"},
controllers: {omniauth_callbacks: "omniauth_callbacks"}
答案 0 :(得分:1)
您的link_to标记包含:method => :delete
,但您的错误消息表明正在使用GET方法发出请求。这不起作用,因为路由仅用于DELETE请求。
您是否点击了“退出”链接并立即收到错误消息?我希望你的回答是否定的。您更有可能在不使用链接的情况下直接在浏览器中访问/用户/注销。这将使它成为GET请求而不是DELETE。