hello-world
webエンジニアのメモ。とりあえずやってみる。

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

公開日時

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後方一致

参考


Related #active_admin

[Rails]ActiveAdminでCSVダウンロード機能をカスタマイズする

ActiveAdminにはcsvダウンロード機能がデフォルトついているのですが、デフォルトのままだと一括でcsvデータを取得することができません。(管理画面表示1ページあたりの表示件数分になるので30件しか取得できませんでした)

[rails][active_admin]paranoiaで論理削除したデータを管理画面で一覧表示する方法

migrationファイルにdeleted\_atを追加することで、手軽に論理削除を実装できる paranoia