2013-10-25 54 views
1

我在指數三個字段;名字,姓氏和isManager(1或0)。 如何去使用的QueryParser,並添加IsManager的(作爲一個全球性的過濾器)1只讓我有效地尋找只有管理者?Lucene QueryParser以及如何添加全局過濾器?

所以,如果通過在「名字:約翰」爲用戶搜索/,我想添加/追加「IsManager的:1」作爲一個全球性的過濾器。一個解決方案是「不IsManager的:0」添加到所有用戶的查詢字符串...但不知道是否有任何其他的首選方式。

回答

0

使用query filters是做正確的方式從QueryParer回來。

與追加的問題是,理論上這是容易出現SQL注入攻擊(認爲SQL injection但對Lucene的查詢)。