0
こんにちは私は私の会社の検索バーを持っています..しかし、それは投げているとエラーと私はなぜうまくいかない!Rails Search [params] error
マイビュー
application.html.erb
<%= form_tag firms_path, :method => 'get', :class => 'form-search' do %>
<%= text_field_tag :search, params[:search], :class => 'input-medium search-query', :placeholder => 'Firm name' %>
<%= submit_tag "Search", :name => nil ,:class => 'btn' %>
<% end %>
マイfirms_controller.rb
def index
@firms = Firm.search(params[:search])
end
def self.search(search)
if search
where(['name LIKE ?', "%#{search}%"]).page(params[:id])
else
scoped
end
end
これは正常に動作するために使用されるが、今ではこのエラーを投げています。
NameError in FirmsController#index
undefined local variable or method `params' for #<Class:0x007f93cd8b2ac8>
app/models/firm.rb:13:in `search'
app/controllers/firms_controller.rb:8:in `index'
任意の助けを事前に感謝
ロス
は 'params'はので、あなたのモデルの一つ内側の方法から使用することはできませんコントローラメソッドです。 – mikej
どのテーブルに名前がありますか。 – Kashiftufail
Firm.searchを使用してFirmテーブルのself.searchメソッドを呼び出しています。ビュー内の[params]:検索は、コントローラの.searchメソッドの引数? – RMcNairn