我尝试在使用ElasticSearch的本地计算机上实现rails应用程序。所以我安装并使用此命令为应用程序设置ElasticSearch:
curl -XPUT "http://localhost:9200/dev-contacts-v3/_mapping" -d ' { "mappings" : { "_default_" : { "properties" : { " pin" : { "properties" : { "location" : { "type" : "geo_point" } } } } } } } '
。
但是它返回一个错误:
{"error":"ActionRequestValidationException[Validation Failed: 1: mapping type is missing;]","status":400}
我意识到只有当我使用带有此{@ 1}}下划线的路线"http://localhost:9200/dev-contacts-v3/_mapping"
时才会发生错误。
有没有人知道这个错误的原因?
答案 0 :(得分:1)
_mapping
函数允许您查看给定索引的现有映射。如果要为新索引定义映射,可以使用索引url:
PUT /dev-contacts-v3
{
"mappings": {
"_default_": {
"properties": {
"pin": {
"properties": {
"location": {
"type": "geo_point"
}
}
}
}
}
}
}
要查看索引的映射:
GET /dev-contacts-v3/_mapping
在与mappings
相同的级别上,您可以指定settings
,其中描述可用于映射的filters
,analyzers
等。