Rails 3.2でそれぞれオプションである複数のパラメーターで検索/フィルター処理するにはどうすればよいですか?以下の設定では、現在次のエラーが発生しています。どんな助けでも大歓迎です。
undefined method `paginate' for nil:NilClass
Application Trace | Framework Trace | Full Trace
app/controllers/contacts_controller.rb:50:in `index'
これが私のcontacts_controllerのインデックスアクションです:
def index
city = params[:city]
state = params[:state]
zip = params[:zip]
@contacts = Contact.search(city,state,zip).paginate(:page => params[:page], :per_page => items_per_page)
end
そして、これが私の連絡先モデルの検索方法です。
def self.search(city, state, zip)
joins(:profile => :addresses)
.where("city like ?", "%#{city}%") unless city.blank?
.where("state = ?", state) unless state.blank?
.where("zip like ?", "%#{zip}%") unless zip.blank?
end