我看到ActiveAdmin::Filters::ResourceExtension defines reset_filters!,但我不知道应该在哪里调用。当我在活动管理员中创建新记录时,我希望重置过滤器。
示例:我有一个Post模型和Tag模型。帖子有很多标签。当我创建新标记并使用该新标记标记帖子时,帖子ActiveAdmin页面上的过滤器不会更新 - 它只会列出先前存在的标记,并且不会在过滤器中包含新标记。
我该怎么做?
答案 0 :(得分:4)
我认为那是因为你有这样的过滤器:
filter :foo, as: :select, collection: Foo.where(bar: 'baz')
但你需要的是:
filter :foo, as: :select, collection: proc{ Foo.where(bar: 'baz') }