gpt4 book ai didi

devise - 401 重定向循环与 Active Admin 和 Devise

转载 作者:行者123 更新时间:2023-12-02 05:08:13 27 4
gpt4 key购买 nike

我有一个包含 Devise (2.2.3) 和 Active Admin (0.5.1) 的应用程序,我先安装了 Devise,然后安装了 Active Admin。整个应用程序需要登录,所以在我的应用程序 Controller 中我有以下内容:

before_filter :authenticate_user!

但是,由于将 Active Admin 安装到根命名空间(config.default_namespace = false,在 initializers/active_admin.rb 中),我的应用程序现在不允许任何人登录。它创建一个指向路径/users/login 的重定向循环。

我已经尝试通过在我的 config/application.rb 文件中添加一个 skip_before_filter 来缓解这个问题,但这并没有奏效

config.to_prepare do
Devise::SessionsController.skip_before_filter :authenticate_user!
UsersController.skip_before_filter :authenticate_user!
end

我还在 app/admin/user.rb 中添加了以下内容

controller do
skip_before_filter :authenticate_user!
end

也什么也没做。最后,我尝试在我的 application_controller.rb 中明确排除这两个 Controller ,但这也没有任何作用。

before_filter :authenticate_user!, except: {controller: [:users, 'devise/sessions']}

如何解决这个相当烦人的问题?

最佳答案

通过改变我的路线解决了这个问题。 ActiveAdmin 路由需要在 Devise 路由之后,像这样:

devise_for :users, ActiveAdmin::Devise.config
ActiveAdmin.routes(self)

相信这是因为我在安装和配置 Devise 之后安装了 ActiveAdmin。

关于devise - 401 重定向循环与 Active Admin 和 Devise,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15936218/

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