将edismax搜索限制为某个字段值,并在结果中找出匹配的字段

时间:2017-12-31 17:17:56

标签: solr

我有这些查询参数:

  'q' => "iphone",
  'echoParams' => "explicit",
  'defType' =>'edismax',
  'fl' => 'name,category,score',
  'qf' =>'name_suggest_edge^50 name_suggest_exact^50  name_suggest_ngram',
  'pf' =>'name_suggest_edge^100 '

如何将搜索范围限制为具有字段值docs

category:phones

另一个问题:有什么方法可以在返回结果时知道q name_suggest_edge name_suggest_exact上哪些字段name_suggest_ngram匹配。

1 个答案:

答案 0 :(得分:0)

查看debugQuery的输出 - 它会准确地告诉您哪些字段对文档的分数有贡献。请记住,多个字段可以匹配,因此您必须确定优先级。

您还可以使用突出显示来实现类似的功能 - 它会在与您的查询匹配的字段中突出显示令牌。