Python ElasticSearch DSL:如何映射未分析的字符串字段?

时间:2016-05-03 17:44:22

标签: python elasticsearch

示例代码仍会创建已分析的ES字符串字段。

试过这个:

username = String(fields={'raw': String(index='not_analyzed')})

而且:

username = String(index="not_analyzed")

2 个答案:

答案 0 :(得分:1)

尝试在您定义<className>.init()的班级上调用username。这应该在ES中创建映射。

有关详细信息,请参阅http://elasticsearch-dsl.readthedocs.io/en/latest/persistence.html?highlight=init#document-life-cycle

答案 1 :(得分:0)

对于最新的Elasticsearch,String数据类型被TextKeyword

取代

为了不分析字符串,

from elasticsearch_dsl import Keyword

username = Keyword(index=False)