我将 Solr 与 Sunspot (ruby) 一起使用,由于其他限制,我必须使用 Lucene 解析器而不是 DisMax 解析器。我需要能够同时使用用户名和名字字段进行搜索。
如果我使用的是 DisMax,我可以指定 qf="username+first_name" 但仅使用 lucene 解析器我只能设置 df(默认字段)并且它不允许我指定多个字段。
如何使用 lucene 解析器搜索多个字段?
更新:答案:只需使用 q 参数
adjust_solr_params do |params|
params[:defType] = "lucene"
params[:q] = "username:\"#{params[:q]}\" OR first_name:\"#{params[:q]}\""
end