我想要的日期範圍過濾器添加到我的searchkick未定義的方法`where`爲searchkick
這是我
@events = Event.page(params[:page]).per(10).search(params[:search], misspellings: { distance: 1 }, order: { date: :asc, eventname: :asc }, match: :word_start, page: params[:page], per_page: 20)
if params[:date_from]
byebug
@events = @events.where('date BETWEEN ? AND ?', params[:date_from], params[:date_to])
end
然而,我發現了問題是這樣的:
*** NoMethodError Exception: undefined method `where' for #<Searchkick::Results:0x007f95eaf97f90>
任何幫助,將不勝感激
編輯
我知道這是另外一個問題可能更好,但它有點相同的問題
def search
@events = Event.page(params[:page]).per(10)
if params[:date_from]
@events = @events.where('date between ? AND ?', params[:date_from], params[:date_to])
byebug
end
@events = @events.search(params[:search], misspellings: { distance: 1 }, order: { date: :asc, eventname: :asc }, match: :word_start, page: params[:page], per_page: 20)
if @events.results.any?
render 'events/results'
end
end
現在,這是不工作我怎麼想的那樣,我已經得到了事件名稱,datefrom和通過參數傳遞。如果我在byebug上鍵入@events
它會得到範圍內的事件,但不會得到我需要的事件
您好,這說明它不過有一個問題,由於某種原因,我的日期範圍過濾器沒有實際工作,我現在將分享我的控制器 –
沒有得到您需要的事件?你需要在你的兩人之間的開始/結束日期生活嗎? – Doon
事件確實是,它實際上仍然返回所有事件。 –