【问题标题】:Django Haystack document=True, from a conceptual standpoint从概念的角度来看,Django Haystack 文档=True
【发布时间】:2012-10-08 17:31:52
【问题描述】:

所以,我正试图围绕“text = indexes.CharField(document=True, use_template=True)”这个概念展开思考。来自文档:

每个 SearchIndex 都要求有一个(并且只有一个)字段具有 document=True。这会向 Haystack 和搜索引擎指示哪个字段是在其中进行搜索的主要字段。

由于我看到的每个示例似乎都只是将这个“抛出”作为惯例,“text = indexes.CharField(document=True, use_template=True)”实际上是如何描述任何内容的?

  1. 在使用此约定时,引擎选择主要搜索模型中的哪个字段?

  2. 在这个text字段中不应该总是有一个model_attr=desired_model_attr,所以引擎实际上可以知道哪个model_attr是搜索的主要字段吗?

【问题讨论】:

    标签: django django-haystack


    【解决方案1】:

    经过进一步调查,我想我明白了 - 为可能有同样问题的其他人回答我自己的问题。

    我相信我的困惑主要与文档中use_template=True 的使用有关。当您使用模板时,您无需在索引中设置model_attr,因为您在数据模板中描述了文档结构(以及您希望搜索的模型字段)。所以回答我的两个问题:

    1. 由于您指定 use_template=True,因此您必须在数据模板中描述要搜索的模型字段。如果您打算设置model_attr,请不要设置use_template=True

    2. 见上文。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-11-02
      • 2011-07-03
      • 2017-07-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-07-24
      相关资源
      最近更新 更多