【发布时间】:2019-03-21 17:06:58
【问题描述】:
我想在 ActiveAdmin 索引页面的顶部显示一些统计信息。
假设我有一个汽车模型,具有颜色属性和制造年份。在我的索引页面的顶部,我想显示红色汽车的数量。但我希望该计数反映过滤器的使用;如果我选择仅显示 1995 年制造的汽车,我希望红色汽车数量相应地改变。
如何访问过滤后的列表?我猜测存在一个包含过滤操作结果的变量,但我找不到它。
【问题讨论】:
我想在 ActiveAdmin 索引页面的顶部显示一些统计信息。
假设我有一个汽车模型,具有颜色属性和制造年份。在我的索引页面的顶部,我想显示红色汽车的数量。但我希望该计数反映过滤器的使用;如果我选择仅显示 1995 年制造的汽车,我希望红色汽车数量相应地改变。
如何访问过滤后的列表?我猜测存在一个包含过滤操作结果的变量,但我找不到它。
【问题讨论】:
事实证明,您可以在索引中的任何位置使用变量 collection。
这样的东西运行良好,并且反映了过滤器的状态:
index do
div "Total: #{collection.count}"
column :attribute1
column :attribute2
actions
end
另一种方法是使用ransack,这样:
ModelName.ransack(params[:q]).result
但它做了一个无用的查询,无缘无故地再次调用ransack。
灵感来自this question。
【讨论】:
【讨论】: