У меня каверзный вопрос, насколько я знаю, я не видел никого с такой же проблемой, по крайней мере, не всех сразу!
У меня есть следующие тест JSON для преобразования:
INPUT
[
{
"test_id": 1212101011,
"someDate": "2020-03-06",
"keyToCheck": "true",
"someData": "123"
},
{
"test_id": 8787909099,
"someDate": "2020-03-09",
"keyToCheck": "false",
"someData": "456"
}
]
И я пытаюсь получить следующий вывод.
DESIRED
[{
"test_id": 1212101011,
"someDate": "2020-03-06",
"keyToCheck": "true",
"someData": "123",
"objToAdd": {
"id": "1",
"label": "dummy1"
}
},{
"test_id": 8787909099,
"someDate": "2020-03-09",
"keyToCheck": "false",
"someData": "456",
"objToAdd": {
"id": "2",
"label": "dummy2"
}]
Мне уже удалось распространить все значения и при необходимости изменить имена полей, но добавление условия просто разрушает все. Кроме того, с текущим значением spe c, которое я имею, я не получаю массив после преобразования, который я уже могу получить с моим прежним spe c.
Спектр c, который у меня пока есть:
SPE C USED
[
{
"operation": "shift",
"spec": {
"*": {
"keyToCheck": {
"true": {
"#1": "objToAdd.id",
"#dummy1": "objToAdd.label"
},
"false": {
"#2": "objToAdd.id",
"#dummy2": "objToAdd.label"
}
}
}
}
}
]
Но, как уже было сказано, это только давая мне это:
РЕЗУЛЬТАТ ТАК ЧАСТО
{
"objToAdd" : {
"id" : [ "1", "2" ],
"label" : [ "dummy1", "dummy2" ]
}
}
Что, похоже, является проблемой отступа. Добавление [& 1] до того, как значения в условии не помогли, и когда я распространяю значения с помощью "*": "[& 1]. &", Я теряю элемент, сгенерированный условием if-else.
Есть ли способ сделать это? Любая помощь будет оценена! Заранее спасибо.