Я только начал изучать толчок.Я хочу преобразовать JSON в желаемый формат.Я почти закончил, но застрял с этой точкой
Мой входной JSON выглядит как
{ "first_name": {
"label": "First name",
"type": "text",
"value": "John"
},
"last_name": {
"label": "Last name",
"type": "text",
"value": "Doe"
},
"email": {
"label": "Email",
"type": "text",
"value": "johndoe@gmail.com"
}
"id": 123,
"marital_status": "Single",
"author_id": null,
"company": null,
"address": {
"city": {
"label": "city",
"dom_type": "dropdown",
"value": "test"
},
"state": {
"label": "state",
"dom_type": "dropdown",
"value": "state"
},
"country": {
"label": "country",
"dom_type": "dropdown",
"value": "country"
}
}
}
с выходным форматом, подобным этому
{
"first_name" : "John", "last_name" : "Doe", "email" : "johndoe@gmail.com",
"id": 123, "marital_status": "Single", "author_id": null, "company": null,
"address" : { "city" : "test", "state" : "test", "country" : "test" }
}
Я пробовал этот сдвигspec
[
{
"operation": "shift",
"spec": {
"address": {
"*": {
"@value": "address.&1"
}
},
"*": {
"@value": "&1"
}
}
}
]
И получил
{
"first_name" : "John", "last_name" : "Doe", "email" : "johndoe@gmail.com", "address" : { "city" : "test", "state" : "test", "country" : "test" }
}
Поскольку сопоставитель "*" отбрасывает простые пары ключ-значение.Я знаю, что мне чего-то не хватает.Любая помощь?