2017-04-02 7 views
0

Ransackを使用して、Railsアプリケーションのコードに検索機能を実装しようとしています。インデックスページから検索するたびに、画面が短く点滅しますが、インデックスページはまったく変更されません。ここでRansackはインデックスページを変更しません

は私の検索フォームのコードです:

<div id="search"> 
<% content_for :search do %> 
    <%= search_form_for @search do |f| %> 
    <div class="field"> 
     <%= f.label :name, "Restaurant Name:" %> 
     <%= f.text_field :name, size: 50 %> 
    </div> 
    <div class="field"> 
     <%= f.label :address1, "Address (first line)" %> 
     <%= f.text_field :address1, size: 50 %> 
    </div> 
    <div class="field"> 
     <%= f.label :city, "City" %> 
     <%= f.text_field :city, size: 50 %> 
    </div> 
    <div class="field"> 
     <%= f.label :state, "State" %> 
     <%= f.text_field :state, size: 2 %> 
    </div> 
    <div class="field"> 
     <%= f.label :zip, "ZIP Code" %> 
     <%= f.text_field :zip, size: 5 %> 
    </div> 
    <div class="actions"> 
     <%= f.submit "Search" %> 
    </div> 
    <% end %> 
<% end %> 
</div> 

そして、ここでは私のコントローラ内のindexアクションである:ここで

def index 
    @search = Restaurant.search(params[:q]) 
    @restaurants = @search.result.order('name').page(params[:page]).per(10) 
    end 

私が検索しようとすると、私のコンソールに出力します何されます名前欄の「別の」という単語:

Started GET "/restaurants?utf8=%E2%9C%93&q%5Bname%5D=Another&q%5Baddress1%5D=&q%5Bcity%5D=&q%5Bstate%5D=&q%5Bzip%5D=&commit=Search" for 162.228.136.142 at 2017-04-02 16:04:12 +0000 
Cannot render console from 162.228.136.142! Allowed networks: 127.0.0.1, ::1, 127.0.0.0/127.255.255.255 
Processing by RestaurantsController#index as HTML 
    Parameters: {"utf8"=>"✓", "q"=>{"name"=>"Another", "address1"=>"", "city"=>"", "state"=>"", "zip"=>""}, "commit"=>"Search"} 
    Rendering restaurants/index.html.erb within layouts/application 
    Rendered restaurants/_restaurant_search_form.html.erb (2.3ms) 
    Restaurant Load (0.5ms) SELECT "restaurants".* FROM "restaurants" ORDER BY name LIMIT ? OFFSET ? [["LIMIT", 10], ["OFFSET", 0]] 
    (0.1ms) SELECT COUNT(*) FROM "restaurants" 
    Rendered restaurants/index.html.erb within layouts/application (41.0ms) 
Completed 200 OK in 132ms (Views: 128.9ms | ActiveRecord: 0.6ms) 

答えて

0

私は間違っていたことを理解しました。明らかに、シンボルの命名規則は非常に重要です。 ":name"の代わりに、 ":name_cont"に変更して "contains"条件を使用するだけでした。

関連する問題