我当前在一个映射中有一个深层嵌套的对象:
{
"doc": {
"properties": {
"biography": {
"properties": {
"en": {
"properties": {
"event": {
"type": "nested",
"properties": {
"id": {
"type": "long"
},
...
当我以后要添加新的event
时,索引的文档通常不会初始化所有结构。因此,目前,我有一个脚本更新,如下所示:
if (ctx._source.biography == null)
ctx._source.biography = new HashMap();
if (ctx._source.biography.${language} == null)
ctx._source.biography.${language} = new HashMap();
if (ctx._source.biography.${language}.event == null) {
ctx._source.biography.${language}.event = [ params.event ]
} else {
ctx._source.biography.${language}.event += [ params.event ]
}
有没有一种方法可以简化那些初始化步骤?