あらかじめ完成しているindexページに検索機能を追加する。今回はSQLでのLIKE演算子を使ったシンプルな検索を実現する。
Viewには
<%= form_tag stories_path, :method => "get" do %>
<%= text_field_tag :title, params[:title] %>
<%= submit_tag "検索"%>
<% end %>
と書いておいて、
controllerのindexメソッドには、機能追加前は
@products = Produc.all
と書いてあったりするけど、そのかわりに
@products = Product.where("title LIKE ?", "%#{params[:title]}%")
を書き足す。
これで完成。
いちおう%#{}%で囲ってエスケープはしてあるけど、もしかしたらSQLインジェクションの穴があるかも。セキュリティチェックが必要。