Solr несколько фильтров тегов / исключая - PullRequest
6 голосов
/ 23 января 2012

Я пытаюсь применить фильтр тегов для поиска Solr Tagging_and_exclusive_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

Но по некоторым причинам исключение работает только для одного фильтра, а другой становится незамеченным.Есть ли проблемы с моим синтаксисом?Кто-нибудь может предложить лучший метод?

Ответы [ 3 ]

4 голосов
/ 21 февраля 2014

У меня похожая проблема, которую нужно решить, и кажется, что она работает, просто используя запятую для разделения исключенных тегов:

От: http://wiki.apache.org/solr/SimpleFacetParameters#facet.field

поддерживается для всех типов граней.И тег, и ex local params могут указывать несколько значений, разделяя их запятыми.

Так что, я думаю, вы будете использовать его следующим образом: {!ex=doc,dt}

2 голосов
/ 12 февраля 2014

Этот ответ может быть не своевременным, но я думаю, что это должно решить вашу проблему.

Попробуйте добавить оба тега в оба предложения 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
1 голос
/ 23 января 2012

Возможно, раздел http://wiki.apache.org/solr/SimpleFacetParameters#Multi-Select_Faceting_and_LocalParams поможет вам больше, чем тот, который вы упомянули.

С уважением!

...