検索をgetで行う

■通常検索はpostでなくgetで行う。Googleとかも、検索文字列がパラメータとして表示される



【1.view側のコード】
ここには、検索ボックスを表示される。そのコードは次のようになる


<h1>商品一覧</h1>

<form action="/search/search" method="get">
<table>
  <tr>
    <td><input name="query" size="30" type="text" value="" /></td><td><%=   
        submit_tag("Search") %></td>
  </tr>
</table>
<%= end_form_tag %>

見ての通り、ヘルパーメソッドを使っていない。あると思うのだが・・・
このname="query"で、パラメータを指定している。



【2.controller側】
上のviewのget先のcontrollerは次のようになる。


 def search  
    pattern = params[:query]
    split_pattern = pattern.split()
    
    products = Product.find(:all)
    @products.clear 

ポイントは、pattern = params[:query]でgetパラメータを取り出せること。



searchの全コードはこちら