【问题标题】:Active_Admin routing issueActive_Admin 路由问题
【发布时间】:2012-06-01 15:40:48
【问题描述】:

我已经在我的应用程序中安装了 Active_Admin gem,但我的应用程序上有一个过滤器,因此您可以访问的唯一页面是登录页面。当我尝试访问 active_admin 页面时,它会将我路由到我的应用程序的登录页面,而不是我的管理员登录页面。当我登录我的应用程序时,我可以访问 active_admin 登录页面。我的问题是我会将我的 skip_before_filter 语句放在这个 gem 中的什么位置?谢谢。

【问题讨论】:

    标签: ruby-on-rails ruby-on-rails-3 activerecord activeadmin before-filter


    【解决方案1】:

    您可以将跳过过滤器放在您的应用程序控制器中。这可能在 lib/my_active_admin.rb 中。然后在 ApplicationControllers 定义之前在 applications_controller 中要求 'my_active_admin'。

    module ActiveAdmin
      class ResourceController < BaseController
        before_filter :my_filter
    
        protected
    
        def my_filter
          <logic here>
        end
      end
    end
    

    【讨论】:

    • 是的,这解决了问题,但它也打开了我的整个应用程序。由于 active_admin 的控制器实际上位于 gems 文件夹中,因此我不知道如何为该指定控制器设置 :except 语句。关于如何在路径 C:\Ruby193\lib\ruby\gems\1.9.1\gems\activeadmin-0.4.4\app\views\active_admin 上设置 :except 语句的任何想法。有什么想法吗?
    • 我已添加代码,但无法自行尝试/测试。有帮助吗?
    • 这段代码部分正确,它有所帮助。我设置跳过应用程序控制器上的前置过滤器,然后在每个其他控制器上设置前置过滤器。我知道这是一个漫长的工作,但这个应用程序并不庞大,所以它适用于此。由于某种原因,您无法在 ActiveAdmin gem 中指定前置过滤器。感谢您的帮助。
    猜你喜欢
    • 2017-03-26
    • 1970-01-01
    • 2018-09-30
    • 2016-11-09
    • 1970-01-01
    • 2011-09-16
    • 2016-07-10
    • 2012-04-27
    • 2011-10-28
    相关资源
    最近更新 更多