我很高兴能在我的应用程序中设置Solr。我已经成功地搜索了两个模型,但现在正在尝试使用“with”子句来微调我的搜索。
我的事件模型有:
class Event < ActiveRecord::Base
searchable do
text :headline, :info
time :event_date
end
end
我的场馆模型具有以下特点:
class Venue < ActiveRecord::Base
searchable do
text :name, :address_1, :address_2, :town, :postcode
end
end
然后我有一个搜索控制器,在其中我之前成功地根据我的params[:search]
返回了事件和场馆。现在我正在尝试返回即将到来的事件和场馆,但是由于场馆中没有'event_date',所以我现在只能得到事件。简而言之,我如何使with(:event_date)
仅适用于Event模型?
class SearchController < ApplicationController
def search
@search = Sunspot.search [Event, Venue] do
fulltext params[:search]
with(:event_date).greater_than(Time.zone.now)
end
@results = @search.results
respond_to do |format|
format.json { render json: @results }
end
end
end