'navbar-link' %>-6ren">
gpt4 book ai didi

ruby-on-rails - 没有路线匹配 [GET] "user/sign_out"rails 5

转载 作者:行者123 更新时间:2023-12-04 07:35:32 28 4
gpt4 key购买 nike

我目前在使用 Devise 时遇到此错误,我已经尝试了其他问题中的多种方法以零运气解决它。

首先建议我确保将方法添加为删除:

<%= link_to "Logout", destroy_user_session_path, :method => :delete, :class => 'navbar-link'  %>

运气不好。

然后我被告知我需要在布局标题中包含以下内容:

<%= javascript_include_tag 'application', 'data-turbolinks-track': 'reload' %>

或者这个:

<%= javascript_include_tag :defaults %>

仍然...没有运气。

最后有人建议我更改我的/config/initializers/devise.rb 文件以将 config.sign_out_via = :delete 更改为 config.sign_out_via = :get

一点运气都没有。

我不知道还能尝试什么,

这是我当前的 HTML 代码,如果您需要查看我的路线以更好地为您提供帮助,请告诉我。

    <!DOCTYPE html>
<html>
<header>
<h2><span>Anume*</span></h2>
<img id='header' src="http://wallpapercave.com/wp/hkWe2SK.jpg" alt="" />



</header>
<head>
<title>Anume</title>
<%= csrf_meta_tags %>

<%= stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track': 'reload' %>
<%= javascript_include_tag 'application', 'data-turbolinks-track': 'reload' %>
</head>

<body>
<p class="navbar-text pull-right">
<% if user_signed_in? %>
Logged in as
<strong><%= current_user.email %></strong>.
<%= link_to 'Edit profile', edit_user_registration_path, :class => 'navbar-link' %>
|
<%= link_to "Logout", destroy_user_session_path, :method => :delete, :class => 'navbar-link' %>
<% else %>
<%= link_to "Sign up", new_user_registration_path, :class => 'navbar-link' %>
|
<%= link_to "Login", new_user_session_path, :class => 'navbar-link' %>
<% end %>
</p>
</body>

这是我用于注销功能的 Rails 路线:

destroy_user_session DELETE /users/sign_out(.:format)    devise/session#destroy

最佳答案

我喜欢做的一件事

/config/initializers/devise.rb 是从 config.sign_out_via = :delete 更改为 config.sign_out_via = [:delete, :get] 所以你有两个涵盖删除方法未命中的情况。

打开您的控制台并确保 jquery 和 jquery_ujs 正确加载

让我和你分享我的设置

在我的 Assets application.js 我有

#app/assets/javascripts/application.js
//= require jquery
//= require jquery_ujs
//= require turbolinks

现在在我的布局上

#app/views/layouts/application.html.haml
!!!
%html{:lang => "en"}
%head
%meta{:charset => "utf-8"}/
%meta{:content => "IE=edge", "http-equiv" => "X-UA-Compatible"}/
%meta{:content => "width=device-width, initial-scale=1", :name => "viewport"}/
%title
Best Site Ever
= csrf_meta_tags
= stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track': 'reload'
= javascript_include_tag 'application', 'data-turbolinks-track': 'reload'

%body
- if current_user
= link_to destroy_user_session_path, :method => :delete do
Logout

希望对你有帮助

关于ruby-on-rails - 没有路线匹配 [GET] "user/sign_out"rails 5,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41508574/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com