Ruby on rails 为什么可以';我不能使用Desive注销用户吗?

Ruby on rails 为什么可以';我不能使用Desive注销用户吗?,ruby-on-rails,ruby,devise,Ruby On Rails,Ruby,Devise,使用Rails 4.2并安装以下gems gem 'turbolinks' gem 'jquery-ui-rails' gem "devise_ldap_authenticatable" 我能说的一切都很好,除了当我点击我的注销链接 <%= link_to "Logout", destroy_user_session_path, method: :delete, :data => { :no_turbolink => true } %> 当我在开发环境中执行相同的步骤

使用Rails 4.2并安装以下gems

gem 'turbolinks'
gem 'jquery-ui-rails'
gem "devise_ldap_authenticatable"
我能说的一切都很好,除了当我点击我的注销链接

<%= link_to "Logout", destroy_user_session_path, method: :delete, :data => { :no_turbolink => true } %>
当我在开发环境中执行相同的步骤时,一切都很好,但在生产环境中,我得到了上面描述的行为。正如一些帖子所建议的那样,我还尝试将destroy从
:delete
方法更改为
:get
(尽管这似乎非常不正确),但没有成功。我还检查了application.html.erb中是否有以下行:
——它有。最后,这里是我的(可能太多)javascript列表,包括

//= require jquery
//= require jquery-ui
//= require jquery_ujs
//= require jquery.turbolinks
//= require jquery.tokeninput
//= require jquery-ui/autocomplete

// for bootstrap 4 add tether below
//= require turbolinks
//= require nprogress
//= require nprogress-turbolinks
//= require nested_form_fields
//= require highcharts
//= require highcharts/highcharts-more
//= require highcharts/modules/exporting
//= require bootstrap-sprockets
//= require bootstrap-multiselect
//= require_tree .
如果我忘了什么,请告诉我,我会把它包括在内。谢谢

更新(添加销毁操作)


也许可以尝试删除整个会话,而不仅仅是auth_令牌。除了designe\u ldap\u验证器之外,我使用的是上面相同的designe设置。轨道4

# app/controllers/sessions_controller.rb
class SessionsController < ApplicationController

    def destroy
        session.delete(:user_id)
    end
end
在初始值设定项中

Rails.application.config.session_store :active_record_store

打电话给super…除非需要,否则让Desive帮你做。@Milind,我打电话给super,很抱歉我没有包括我的破坏行动。现在更新…我认为解释是(我可能是错的)如果我在会话中使用:cookie\u存储,那么我不能破坏或使特定会话无效。您所能做的最好的事情是:设置cookie_store超时以使会话过期。因此,正如您在回答中所解释的,我已经切换到AR会话存储。谢谢
# app/controllers/sessions_controller.rb
class SessionsController < ApplicationController

    def destroy
        session.delete(:user_id)
    end
end
# To log out
<%= link_to "Log Out", destroy_user_session_path, :method => 'delete'%>
gem 'activerecord-session_store', github: 'rails/activerecord-session_store'
Rails.application.config.session_store :active_record_store