我在SOLR中有一个要查询的对象,同时突出显示我需要的子对象的各个部分。
[已编辑-更多信息]
直到我添加一个简单的fq
(仅将其应用于父对象)后,它才能起作用。然后数据停止返回,因为它似乎也将过滤器应用于子对象。
带有子对象的示例文档
[
{
"id": "1",
"sourceid": "1",
"isActive": true,
"contentType": "parentDocument",
"_childDocuments_": [
{
"id": "1_1",
"contentType": "job",
"sourceid": 1,
"Title": "Head of Operations",
"job_description": "responsibile"
},
{
"id": "1_2",
"contentType": "job",
"sourceid": 1,
"Title": "Boss",
"job_description": "Liaise"
}
]
}
]
此查询有效
http://localhost:8181/solr/people/select?
&q="Liaise"
&qf=job_description
&pf=job_description
&hl.fl=job_description
&hl.q="Liaise"
但是在此添加-不返回结果
&fq=isActive:true
我还尝试添加&hl.q="responsible"
以及一些请求处理程序的详细信息
<requestHandler class="solr.SearchHandler" name="/select">
<lst name="defaults">
<str name="df">biography</str>
<str name="wt">json</str>
<str name="indent">true</str>
<str name="defType">edismax</str>
<bool name="hl">true</bool>
<bool name="stopwords">false</bool>
<bool name="lowercaseOperators">true</bool>
<bool name="sow">false</bool>
</lst>
<arr name="first-components">
<str>unicodeQuoteComponent</str>
</arr>
</requestHandler>