8

https://github.com/sferik/rails_adminを使用して管理インターフェイスを処理しています。

このモデルに存在する現在の列 (id、created_at など) に基づいて、モデルをフィルター処理することができます。

関連付けにカスタム フィルターを追加できるようにしたいと考えています。

例えば:

「町」モデルを検討しているとき、1 つ以上のプロジェクトがある町だけを表示できるようにしたいと考えています。

1 つ以上のプロジェクトが関連付けられている場合に true に設定されるブール値として has_projects と呼ばれる新しい列を町に追加することでこれを行うことができますが、独自のカスタム フィルターを作成するためのよりクリーンな方法が必要だと思います。

4

1 に答える 1

3

enum を使用してみることができます。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    
于 2014-03-06T11:28:24.303 に答える