我正在尝试为Solr搜索Tagging_and_excluding_Filters应用滤镜标记。
挑战在于同时应用多个标记(对于单个页面上的多个选择选项)。例如
q=mainquery&fq=status:public&fq={!tag=dt}doctype:pdf&fq={!tag=doc}document:1&facet=on&facet.field={!ex=dt}doctype&facet.field={!ex=doc}document
但由于某些原因,排除仅适用于一个过滤器和其他过滤器的工作被忽视。我的语法有问题吗?谁能提出更好的方法?
答案 0 :(得分:4)
我有一个类似的问题需要解决,而且似乎只使用逗号来分隔排除的标签:
来自:http://wiki.apache.org/solr/SimpleFacetParameters#facet.field
所有类型的构面都支持过滤器排除。两个标签 和ex本地参数可以通过分离它们来指定多个值 用逗号。
所以我想你会像{!ex=doc,dt}
答案 1 :(得分:2)
这个答案可能不及时,但我认为这应该可以解决您的问题。
尝试在两个ex子句中添加两个标记。 我这样做了,它对我来说也是类似的案例。
q=mainquery&fq=status:public&fq={!tag=dt}doctype:pdf&fq={!tag=doc}document:1&facet=on&facet.field={!ex=dt,doc}doctype&facet.field={!ex=dt,doc}document
答案 2 :(得分:1)
可能是http://wiki.apache.org/solr/SimpleFacetParameters#Multi-Select_Faceting_and_LocalParams部分 会比你提到的更有帮助。
祝你好运!