为了账号安全,请及时绑定邮箱和手机立即绑定

没有路由匹配“/ users / sign_out”设计rails 3

/ 猿问

没有路由匹配“/ users / sign_out”设计rails 3

红颜莎娜 2019-08-29 17:42:46

没有路由匹配“/ users / sign_out”设计rails 3

我在我的应用程序上安装了devise并在我的application.html.erb文件中应用了以下内容:

<div id="user_nav">
    <% if user_signed_in? %>
        Signed in as <%= current_user.email %>. This cannot be cheese?
        <%= link_to 'Sign out', destroy_user_session_path %>
    <% else %>
        <%= link_to 'Register', new_user_registration_path %> or <%= link_to 'Sign in', new_user_session_path %>
    <% end %></div>

我跑了rake routes并确认所有路线都有效。

另外,在我的routes.rb文件中我有devise_for :usersroot :to => "home#index"

单击“注销”链接时出现以下路由错误:

No route matches "/users/sign_out"

是什么导致错误?


查看完整描述

3 回答

?
当年话下

我认为退出的路线是一种DELETE方法。这意味着您的退出链接需要如下所示:

<%= link_to "Sign out", destroy_user_session_path, :method => :delete %>

你的不包括这:method => :delete部分。此外,请注意,要使其工作,您还必须包含<%= javascript_include_tag :defaults %>在您的布局文件(application.html.erb)中。


查看完整回答
反对 回复 2019-08-29
?
UYOU

我在devise.rb中更改了这一行:

config.sign_out_via = :delete

config.sign_out_via = :get

它开始为我工作。


查看完整回答
反对 回复 2019-08-29

添加回答

回复

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信