2014-12-29 95 views
0

我只是想知道是否有一種方法來爲後端elasticsearch指定搜索請求的返回字段。有關如何在JSON API中指定列表,請參見http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/search-request-fields.html在django-haystack中指定搜索結果的列表字段

讓我解釋爲什麼我需要這個。我有大量的文字數據的文章。在這種情況下搜索非常緩慢,導致elasticsearch爲每個搜索結果返回一個大的文本,但我只想渲染除整個文本以外的標題。

可能還有另一種方法嗎?

回答

-1

有多種選擇這裏

  1. 您可以使用Elasticsearch領域選項來指定必須返回的字段值的列表。這將節省一些延遲時間,因爲只有較少的數據必須被傳回。但是實際的數據將被存儲爲_source,並且必須從硬盤中獲取並且爲每個調用進行反序列化。
    LINK - http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/search-request-fields.html
  2. 如果我們不想檢索此字段,但您只希望該字段可被搜索。您可以禁用_source併爲其數據需要檢索的每個字段啓用存儲。 LINK,_source - http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/mapping-source-field.html LINK,商店 - http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/index-modules-store.html

Djanko草垛文檔 - http://django-haystack.readthedocs.org/en/latest/searchresult_api.html#SearchResult.get_additional_fields

+0

這兩個選項是爲我好,但目前還沒有選項'Django的haystack'爲處理它:( –

+0

我在asnwer中添加了djanko乾草堆文檔鏈接。:) –

+0

我認爲'get_additional_fields'可以做其他事情。 –

相關問題