gpt4 book ai didi

ruby-on-rails - 销毁管理 session 导致 http get 请求 rails 4

转载 作者:数据小太阳 更新时间:2023-10-29 07:20:08 25 4
gpt4 key购买 nike

我的 Rails 4 应用程序有一个 User 和 Admin 模型。

我已经为通过 rails_admin gem 创建的管理模型实现了设计。当我尝试注销时出现问题:应用程序重定向到一个意外的页面并且日志显示不断发出 GET 请求,而不是 DELETE 请求。

经过研究,我已确保注销链接具有如下指定的删除方法

  • <%= link_to "管理员注销", destroy_admin_session_path, :method => :delete %>
  • 在 devise.rb 中,注销是通过删除指定的 config.sign_out_via = :删除

    路线如下

    Mvc::Application.routes.draw do
    resources :users
    devise_for :admins
    mount RailsAdmin::Engine => '/admin', as: 'rails_admin'
    root "users#index"
    end

    我完全可以毫无问题地登录,但是当注销请求在浏览器中呈现到/admins/sign_out 时, session 仍然处于事件状态,并且页面仍然显示管理仪表板。有趣的是,闪现消息显示“无法找到模型‘S’”,我对日志显示的内容感到非常困惑

    Started GET "/admins/sign_out" for 127.0.0.1 at 2014-12-03 23:10:50 +0000
    Processing by RailsAdmin::MainController#show as HTML
    Parameters: {"model_name"=>"s", "id"=>"sign_out"}
    [RailsAdmin] Could not load model S, assuming model is non existing. (uninitialized constant S)


    Gemfile
    source 'https://rubygems.org'

    gem 'rails', '4.0.3'
    gem 'sqlite3'
    gem 'bootstrap-sass', '~> 3.3.1'
    gem 'uglifier', '>= 1.3.0'
    gem 'jquery-rails'
    gem 'turbolinks'
    gem 'jbuilder', '~> 1.2'
    gem 'simple_form'
    gem 'bcrypt-ruby'
    gem 'devise'
    gem 'rails_admin'


    group :assets do
    gem 'sass-rails', '~> 4.0.0'
    gem 'coffee-rails', '~> 4.0.0'
    gem 'uglifier', '>= 1.3.0'

    end

    group :doc do

    gem 'sdoc', require: false
    end

    group :development do
    gem 'better_errors', '~> 2.0.0'
    end

    我想实现的是,当执行注销时,管理员 session 被销毁,管理员被重定向到 root_path。我注意到我目前只有应用程序和用户 Controller ,没有 session Controller 。据我了解,设计引擎应该开箱即用地进行 session 管理。有什么建议吗?

    最佳答案

    您似乎没有使用应用程序布局文件。所以尝试将下面的代码片段添加到html文件中

    <head>
    <title>Training</title>
    <%= stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track' => true %>
    <%= javascript_include_tag 'application', 'data-turbolinks-track' => true %>
    <%= csrf_meta_tags %>
    </head>

    关于ruby-on-rails - 销毁管理 session 导致 http get 请求 rails 4,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27283608/

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