2014-03-07 49 views
0

我希望能夠在搜索中包含字段名稱,但不會顯示爲搜索構面中索引術語的一部分。在搜索字符串中包含solr字段名稱,但不包含在方面

實例字段名稱和數據:

技能: - 可憐 - 好 - 優秀

此字段被複制到默認的文本,我想用戶能夠搜索'技能差',而不必選擇'技能'字段。

我已經擴展字段數據,這樣我索引:

  • 拙技
  • 好技能
  • 出色的球技

但很明顯,當我用這個作爲一個搜索平面,然後我得到'技能'的回報。

有沒有辦法告訴solr將字段名稱作爲獲取索引的一部分?我可以在複製字段中包含額外的文字嗎?即索引「窮人」,但我可以將「技能差」複製到主文本索引字段中。

我可以在UI前端將它弄糊塗,但這看起來有點凌亂,我希望有一個更優雅的解決方案。

有什麼建議嗎?

回答

0

您應該在文檔中使用兩個字段。 一個用於搜索,另一個用於顯示構面。

然後在這兩個字段中應用不同的過濾器。 「搜索」字段上的過濾器顯然應該有助於搜索(如ASCIIFolding)。在「面」字段中的過濾器如果非要加上「技能」來創建面應該相當打印方面值(如CapitalizationFilter)

,我想你應該閱讀文檔: http://wiki.apache.org/solr/UpdateRequestProcessor

通過創建自定義處理器,您將能夠爲該面添加單詞「技能」。

+0

好的,這或多或少是我的。所以你說我真的需要3個領域。一個是我的文本字段,將分面數據從「長」分面數據字段中複製而來,僅用於保存它,以便將其複製到文本中。最後,創建方面的實際領域...?那麼您無法在複製域架構命令中追加一些數據,然後您知道? – RogerRoger

相關問題