我是 elasticseach 的新手,并試圖為自己的學習前景實施小任務。我指的是https://www.elastic.co/guide/en/elasticsearch/reference/current/dynamic-templates.html鏈接來創建動態模板;但是,在運行下面提到的查詢時,我得到“型別”:“mapper_parsing_exception”,“原因”:“根映射定義有不受支持的引數:錯誤。
有人可以幫我解決錯誤嗎?看起來我沒有在適當的地方定義我的模板名稱。
PUT e_review_dynamictemplate
{
"mappings": {
"date_detection": true,
"dynamic_date_formats": ["dd/MM/yyyy"],
"numeric_detection": true,
"My_dynamic_templates": [
{
"e_full_name": {
"path_match": "*_Name",
"mapping": {
"type": "text",
"copy_to": "e_full_name",
"norms": false
}
},
"integers": {
"match_mapping_type": "long",
"mapping": {
"type": "integer",
"index": false
}
},
"strings": {
"match_mapping_type": "string",
"match": "Achievements:*",
"unmatch": "Improvements:*",
"mapping": {
"type": "long"
}
}
}
]
}
}
提前致謝!尼維迪塔
uj5u.com熱心網友回復:
您只是錯過dynamic_templates了mappings物件中的屬性。你只需要替換My_dynamic_templates為dynamic_templates.
自定義名稱用于dynamic_templates陣列內的模板定義。
這是更正的片段:
PUT e_review_dynamictemplate
{
"mappings": {
"date_detection": true,
"dynamic_date_formats": [
"dd/MM/yyyy"
],
"numeric_detection": true,
"dynamic_templates": [
{
"e_full_name": {
"path_match": "*_Name",
"mapping": {
"type": "text",
"copy_to": "e_full_name",
"norms": false
}
}
},
{
"integers": {
"match_mapping_type": "long",
"mapping": {
"type": "integer",
"index": false
}
}
},
{
"strings": {
"match_mapping_type": "string",
"match": "Achievements:*",
"unmatch": "Improvements:*",
"mapping": {
"type": "long"
}
}
}
]
}
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/408456.html
標籤:
