2010-07-07 40 views
0

我很難構建具有多個多面體的查詢的URL。我在這裏以下樣品:Solr - 多面語法

http://www.craftyfella.com/2010/01/faceting-and-multifaceting-syntax-in.html

例如,看看易趣screendump,怎麼會網址看,如果你在「品牌」一節選擇「索尼」和「LG」像然後在'類型'部分選擇'LCD'?

假設BRAND和TYPE在schema.xml中定義。

,如果你選擇「索尼」和「LG」這個URL會工作在「品牌」一節:

...&facet=on&facet.field={!ex=BRAND}BRAND&fq={!tag=BRAND}BRAND:Sony%20OR%20LG 

但是如果你需要從兩個「品牌」和「類型」有選擇?我試過這個,但它不給我我想要的:

...&facet=on&facet.field={!ex=BRAND}BRAND&fq={!tag=BRAND}BRAND:Sony%20OR%20LG&facet.field={!ex=TYPE}TYPE&fq={!tag=TYPE}TYPE:LCD 

任何幫助表示讚賞。

回答

0

當您指定fq兩次時,只保留與兩個過濾器匹配的文檔。這就像有條件的AND有一個fq。也許這不是你想要的。如果你想保留文件有一個或另一個過濾器,你將不得不使用一個fq,並將條件與OR組合。

UPDATE
後,重新思考,這讓可能更有意義的和品牌和類型的過濾器之間。

而且,不要忘了在你申請的品牌FQ的第二個條件的字段重新指定:

fq=BRAND:Sony+OR+BRAND:LG 

最後,您可以指定兩個facet.field給出相同的排除,:

...&facet=on&facet.field={!ex=bt}BRAND&facet.field={!ex=bt}TYPE&fq={!tag=bt}BRAND:Sony+OR+BRAND:LG+OR+TYPE:LCD 
+0

謝謝。你是對的。 – thd 2010-07-08 09:21:02