没有在字段[title]上声明的[text]类型的处理程序(python elasticsearch

时间:2017-01-15 07:22:49

标签: python elasticsearch

所有。 我使用的python elasticsearch版本是

import elasticsearch
print elasticsearch.__version__
(5, 0, 1)

映射是

request_body = {
    'mappings':{
        'post': {
            'properties': {
                'title': {
                    'type': 'text',
                }
            }
        }
    }
}

错误是:

  

{u'status':400,u'error':{u'caused_by':{u'reason':u'No handler for   在[title]',u'type'上声明的[text]类型:   u'mapper_parsing_exception'},u'root_cause':[{u'reason':u'No handler   对于在[title]',u'type'上声明的类型[text]:   u'mapper_parsing_exception'}],你''':'u'mapper_parsing_exception',   u'reason':u'无法解析映射[post]:没有类型的处理程序   [text]在字段[title]'}}

上声明

为什么es 5.0无法识别“文本”类型?我的设置有什么问题? 非常感谢!

3 个答案:

答案 0 :(得分:2)

您的地图中存在一些问题。用双引号替换所有单引号,并删除最后一行之后的,(字段类型定义。)

    {  
      "mappings":{  
        "post":{  
          "properties":{  
            "title":{  
              "type":"text"
            }
          }
        }
      }
    }

答案 1 :(得分:1)

分析器对于type:text是必需的。请参阅https://www.elastic.co/guide/en/elasticsearch/reference/current/analysis.html

答案 2 :(得分:0)

升级到最新的Elastic Search,我有一些旧版本2,现在有支持[文本]的版本6