[rails]Active Adminのfilterオプションを完全一致に限定する


[まとめ] 現在開催中のKindleセール情報はこちら

filter

Active Adminのfilterはmigrationで定義した型を元に自動でフォームを作ってくれます。

文字列型の場合は前方、中間、後方、完全一致の4パターンのfilterが利用可能になります。

これはこれで手軽で便利なのですが大量データを扱っているテーブルの場合、like検索は使いたくないので完全一致のみに限定したいです。

そんな場合は、filter設定にfiltersオプションを指定しましょう。

例としてcodeというカラムのfilterを作成する場合、以下のようにequalsを指定すれば完全一致のみになります。

filter :code, as: :string, filters: ['equals']

また、その他のfilterを指定したい場合は以下が指定可能です。

parameter 説明
contains 中間一致
equals 完全一致
starts_with 前方一致
ends_with 後方一致

参考

[まとめ] 現在開催中のKindleセール情報はこちら