Допустим, у меня есть документ
{
someId: 'A'
}
{
someId: 'B'
tag: ['C', 'D']
}
{
someId: 'C'
}
Я хочу добавить строку в массив, если массив существует, иначе создать массив и присвоить ему массив.Я понял, следующий запрос может сделать это.Но я не знаю, что писать в скрипте.
{
"script": {
"inline": "// TODO if null create array with one element else append to value to array",
},
"query": {
"constant_score" : {
"filter" : {
"terms" : {
"someId" : ["A", "B"]
}
}
}
}
}
Ниже приведен псевдокод (JavaScript), который должен быть включен в скрипт, но я не знаю, как перевести его в безболезненный скрипт ES.
if(doc.tag === undefined) {
doc.tag = ['value'];
} else {
doc.tag.append('value');
}