yujiroのプログラミング

勉強内容をアウトプットし、サボらないようにする為のブログ

<DAY129>検索機能実装(search_cop)

\ Follow me!! /

●6/29(土)
●学習日数 129日
●学習時間(本日)6時間
●累計学習時間 679時間
●一日あたりの平均学習時間 5.26時間

search_copとは

検索機能実装を簡易化するgem。
直感的な記述で、検索機能を実装できる。

https://i.gyazo.com/b82b9a307e64912146b936bc9b6e237a.gif

gemを導入

gem 'search_cop'

手順1 対応モデルに適用させる

データーを検索させたいモデルに対して、search_copを有効にします。
itemコントローラーの内容を呼び出したいので、以下のように記述します。

class Item < ApplicationRecord

#検索機能 gem 'search_cop'の呼び出し
  include SearchCop

#検索機能 gem 'search_cop'scope名と検索対象とするカラムを設定
  search_scope :item_search do
    attributes :name
  end

end

手順 2

以下のようにすれば検索結果をモデルから取得できる
文字列が完全一致でなくても、取得してくれる。

Item.item_search("検索データー)

参考文献

github.com

qiita.com