在索引页上,如果使用侧面过滤器的搜索结果不为空,我在索引表上方有具有预定义范围的顶部过滤器,但如果没有任何结果,则此行过滤器消失...
但我在所有情况下都需要它并具有正确的搜索结果计数
希望问题足够清楚=)
最佳答案
实现此目的的一种方法是对 Scopes 构建器类进行猴子修补。您可以通过向 Rails 项目添加初始化程序文件来轻松完成此操作:
config/initializers/activeadmin_scope_patch.rb
module ActiveAdmin
module Views
class Scopes < ActiveAdmin::Component
def build(scopes, options = {})
scopes.each do |scope|
build_scope(scope, options) if call_method_or_proc_on(self, scope.display_if_block)
end
end
end
end
end
这是有效的,因为默认渲染器会检查结果集是否为空,如果是则短路该过程。通过删除该检查,渲染器将显示包含 0 个项目的所有范围,因为没有结果。
关于ruby-on-rails - 事件管理员。始终在索引表上方显示顶级过滤器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14679127/