我已经设置了一个太阳黑子/ solr搜索,其轨道就像魅力一样:
# run the search
search_results = Sunspot.search Project, Question, User, Requests do
fulltext params[:search]
paginate page: params[:page], per_page: 10
end
按给定的类过滤搜索结果可能会很酷。例如,在params[:class]
这样的网址中有一个参数,如果搜索只包含该特定类的结果(项目,问题,用户,请求...),那就太棒了。
我无法弄清楚从哪里开始。
希望有人能帮助我!
答案 0 :(得分:0)
知道了。您需要做的就是将类作为字符串添加到可搜索的块中:
# solr search
searchable do
text :firstname, :lastname, :email, :position
integer :account_id
string :klass
end
def klass
return self.class.to_s.downcase
end
之后,您可以按类(klass)
进行过滤# run the search
search_results = Sunspot.search Project, Question, User do
fulltext params[:search]
with :account_id, params[:account_id]
with :klass, "question"
paginate page: params[:page], per_page: 10
end