RailsAdmin - 自定义您自己的过滤器

时间:2011-12-08 14:37:53

标签: ruby-on-rails ruby ruby-on-rails-3 filter rails-admin

我正在使用https://github.com/sferik/rails_admin来处理我的管理界面。

可以根据此模型中存在的当前列(id,created_at等)过滤模型。

我希望能够为关联添加自定义过滤器。

例如:

当我在探索“城镇”模型时,我希望只能展示有一个或多个项目的城镇。

我可以通过向城镇添加一个新列来实现这一点,将has_projects称为布尔值,当有一个或多个项目关联时将设置为true,但我觉得必须有一种更清晰的方法来制作自己的自定义过滤器?

2 个答案:

答案 0 :(得分:2)

您可以尝试使用枚举。见https://github.com/sferik/rails_admin/wiki/Enumeration

我用于belongs_to关联,如下所示:

field :partner_id, :enum do
  enum do
    Partner.all.collect {|p| [p.name, p.id]}
  end
end

在列表视图中,添加:

list do
  filters [:partner_id]
  ...
end    

答案 1 :(得分:-1)

最近经常浏览the docs,我不相信更优雅地处理这个问题的功能。