今日は検索機能とタグ検索の両立についてまとめます!
この検索機能の記事を実装できていることを前提とします!
https://qiita.com/Kairi_Yasunnde/items/935dcdb8ec88b9ed9d91#3タグ検索機能の実装
tweet.controller.rb
def index
if params[:search].blank? && params[:tag_id].blank?
@tweets= Tweet.all
elsif params[:search].present? && params[:tag_id].blank?
@tweets= Tweet.where("body LIKE ?",'%' + params[:search] + '%')
elsif params[:search].blank? && params[:tag_id].present?
@tweets = Tag.find(params[:tag_id]).tweets
else
@tweets = Tag.find(params[:tag_id]).tweets.where("body LIKE ? ",'%' + params[:search] + '%')
end
index.html.erb
<<%= form_tag({controller:"tweets",action:"index"},method: :get)do %>
<%= text_field_tag :search %>
<%= select_tag :tag_id,
options_from_collection_for_select(Tag.all, :id, :name, params[:tag_id]),
{
prompt: 'タグで絞り込み',
}%>
<%= submit_tag '検索する' %>
<% end %>
この二つのページを挿入すれば、タグ検索と通常の検索機能を両立可能です!
カラムの違う部分などは都度調整してくださいね!