ruby-on-rails - gem Devise Sign Out 不在 Heroku 上工作,但在开发上工作就好了
问题描述
我无法让我的退出按钮在 heroku 应用程序上工作。
JS代码
//= require jquery
//= require jquery_ujs
//= require turbolinks
//= require bootstrap-sprockets
//= require popper
//= require_tree .
这是我的 Routes.rb
Rails.application.routes.draw do
devise_for :users
as :user do
get "signin" => 'devise/sessions#new'
delete "sign_out" => 'devise/sessions#destroy'
get 'signup' => 'devise/registrations#new'
end
root'home#index'
get 'about' => 'home#about'
get'pricing' => 'home#pricing'
get 'contact' => 'home#contact'
get 'about' => 'home#about'
这是我的 Application.html.erb
<ul class="navbar-nav">
<li class="nav-item"><%= link_to "Home", root_path, class: "nav-link" %></li>
<li class="nav-item"><%= link_to "About", about_path, class: "nav-link" %></li>
<li class="nav-item"><%= link_to "Pricing",pricing_path, class: "nav-link" %></li>
<li class="nav-item"><%= link_to "Contact",contact_path, class: "nav-link" %></li>
<li class="nav-item pull-md-right"><%= link_to "Sign In",signin_path, class: "nav-link" %></li>
<li class="nav-item pull-md-right"><%= link_to "Log out", signout_path, :method =>:delete, class: "nav-link" %></li>
<li class="nav-item pull-md-right"><%= link_to "Sign Up",signup_path, class: "nav-link" %></li>
</ul>
</div>
</nav>
所以我做错了什么任何帮助都会很棒。
解决方案
如果你想打电话signout_path
,你必须添加这样的as: :signout
东西;
delete "sign_out" => 'devise/sessions#destroy', as: :signout
推荐阅读
- php - Gmail验证php网站项目的密码
- swift - 如何观察桥接到 NSObject 的纯 Swift 对象的变化?
- c - 在Linux中实现窗口功能InterlockedExchange
- php - 使用 ajax、codeigniter、php 的动态相关菜单下拉菜单
- c# - 如何从任务中读取 http 状态码
? - html - 使用 Vuejs2 将函数附加到 html5 视频
- php - 在 Instamojo 中获取方法帖子不允许出现错误
- sql - SQL - 删除从查询结果中过滤的行
- mongodb - 用 supertest 测试 POST 仍然会创建新文档
- ios - 如何防止 UITableViewCell 内的手势干扰 UITableView 的滚动?