前回の続きから、絞り込み検索の機能を追加してみたいと思います。検索もgem追加で出来るようです。検索用のgem「ransack」を使ってみる準備Gemfileの末尾に以下を追加します。installを行い、サーバの再起動をします。ransackを使って実装Controllerの編集を行います。pageメソッド使いながら、どう書けばいいんだろうと思いながら試行錯誤していたら、次のように編集したらできました。@search.result.page(params[:page]).per(5)・・・end変数searchはviewで使うので、変数infosから切り離しています。次はviewの編集です。ページの先頭の方に次のコードを追加します。%>・・・テキストフィールドのidを「name_cont」と指定していますが、これは検索方法の指定らしいです。この場合は「部分一致」です。詳しくはRansackのススメの「searchの書き方」を参照してください。これで検索の実装ができました。検索ができていて、ちゃんとページングの機能も残っていて、かつ、ページングしたときに検索条件が記憶されています!おまけ今回、infos_controller.rbの編集で、searchメソッドを使いました。そのメソッドのパラメータ名に「q」を指定しています。これ、q以外のパラメータでは検索がうまくいきません。今回作成したform内のテキストフィールドの属性がこのようになっていました。「ransack」はデータを渡すときにデフォルトで”q”の配列に値を入れて渡すみたいですね。Viewのtext_fieldで入力された値をControllerに渡して、Controllerのsearchメソッドで、配列”q”に入っている値を取り出してそれをModelに渡して検索をかけにいっているイメージでしょうか。勉強は明日からがんばる。勉強は明日からがんばる。