【问题标题】:Active Admin filters and scopes活动管理员过滤器和范围
【发布时间】:2014-03-04 23:03:56
【问题描述】:

在我的 Active Admin 代码中,我有以下内容:

scope :all
  scope :in_progress
  scope :completed, default: true
  scope :processed

  filter :order_number, label: "by order number", collection: Order.all.map(&:order_number)
  filter :order_date, label: "orders placed between", collection: Order.all.map(&:order_date)

过滤器在各个选项卡下显示结果。所以现在当用户过滤结果时,我想查看所有选项卡下的所有结果(即用户被重定向到“所有”范围选项卡)。我无法找到实现这一目标的方法。在此先感谢:)

【问题讨论】:

    标签: ruby-on-rails filter scope activeadmin


    【解决方案1】:

    您可以使用Active Admin FilterHidden Field

    你可以像这样在 js 中实现:- (我在coffeescript中写了这段代码)

      $('.index.admin_orders.active_admin .filter_form').submit ->
        scope = $(@).find('#hidden_active_admin_scope').value
        if(scope)
          $(@).find('#hidden_active_admin_scope').value = 'all'
        else
          $(@).find('div.buttons').append('<input id="hidden_active_admin_scope" name="scope" type="hidden" value="all">')
    

    【讨论】:

      【解决方案2】:

      ActiveAdmin 不支持从范围中删除过滤选项。您始终可以将这些范围转换为过滤器(例如 order_status),这可能会将您带到您想要的位置。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2017-06-26
        • 1970-01-01
        • 2013-06-24
        • 2014-03-04
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多