2017-08-01 41 views

回答

1

是搜索,可以add these to the requestHandler definition

<lst name="defaults"> 
    <str name="fq">age:[18 TO *]</str> 
</lst> 

(或者如果你確實意味着大於18而不是18或更大,則可以使用{18 TO *][19 TO *])。

也可以使用appendsinvariants而不是默認值將過濾器查詢添加到所有查詢或將參數設置爲URL參數無法覆蓋的靜態值。

+0

問題是我可能會定義其他'fq'條目,但沒有'age'的過濾器。在這種情況下,使用'age'過濾器的'fq'默認值必須生效,因爲它被其他過濾器覆蓋。 – Mihai238

+1

如果您需要更高級的邏輯,那麼我認爲您將不得不在中間件中執行此操作,因爲無法讀取和分析參數以知道它只是通過配置中Solr中的單個字段進行過濾。你可以擴展requestHandler並編寫你自己的java代碼.. – MatsLindh

+1

你絕對是對的。我通過使用兩個不同的請求處理程序來結束一個更簡單的解決方案:一個使用appender,另一個不使用。感謝您的幫助! – Mihai238

相關問題