Rails 5.1とTwitter Bootstrapをつかったアプリケーションに検索機能をつけました。個人的忘備録で、手順のメモを書いておきます。
🍣 ControllerにSearchアクションを追加
Controller側にsearch用のアクションを追加します。
class ArticlesController < ApplicationController |
🎉 Modelにsearchメソッドを追加
Modelにsearch
メソッドを追加します。今回はtitle
とcontent
をLIKEで検索する例です。
class Article < ApplicationRecord |
🐝 Viewに検索フォームを追加
ERBを使っている場合はこちら。
<% form_tag search_articles_path, method: :get do %> |
HAMLを使っている場合はこちら。
= form_tag search_articles_path, method: :get do |
😀 config/routes.rbにSearchを追加
Rails.application.routes.draw do |
コーディングは以上です。結果はこんな感じになると思います。
😸 補足:Elasticsearch
このサンプルは簡易的に検索機能を実装したいときに有効ですが、サービスで本格的に提供する場合はElasticsearchを使うのが一般的です。
Elasticsearchを使ったRailsサンプルアプリケーションの作成