设置ActiveAdmin过滤器的默认值

时间:2014-06-20 20:37:03

标签: ruby-on-rails activeadmin

我在ActiveAdmin中有一个简单的过滤器用于布尔值。看起来像这样

filter :invisible, as: :select

你可以选择“任何”,“真实”或“假”,它可以正常工作。但是过滤器的默认值是“any”,而我需要将其设置为“true”。我该怎么做?谢谢。

2 个答案:

答案 0 :(得分:1)

尝试这样的事情:

filter : invisible, as: :select, collection: [["Yes", true], ["No", false]]

这对我来说很好。

显然,您可以根据需要修改"Yes" - "No"字符串。

答案 1 :(得分:1)

我找到了答案。您必须使用before_filter,因此它就像

一样简单
controller do
  before_filter invisible: :index do
    params[:q] = {invisible_eq: true} if params[:commit].blank?
  end
end