Jolt 转换嵌套数组和对象
Jolt Transformation Nested Arrays and Objects
我正在尝试为以下输入创建颠簸转换:
{
"admin": [
{
"heading": "header1",
"fields": [
{
"description": "Name",
"value": "John"
},
{
"description": "Foo",
"value": "Bar"
}
],
"id": "123456"
},
{
"heading": "header2",
"fields": [
{
"description": "Name",
"value": "Jane"
},
{
"description": "Foo",
"value": "Bar"
}
],
"id": "789123"
}
]
}
所需输出为:
{
"admin":
{
"header1":
{
"Name" : "John",
"Foo": "Bar",
"id": "123456"
},
"header2":
{
"Name" : "Jane",
"Foo": "Bar"
"id": "789123"
},
}
}
我刚刚开始了解摇晃变换的基础知识,但这对于嵌套结构来说似乎有点复杂。
此规范可满足您的需求
[
{
"operation": "shift",
"spec": {
"*": {
"*": {
"id": "admin.@(1,heading).id",
"*": {
"*": {
"value": "admin.@(3,heading).@(1,description)"
}
}
}
}
}
}
]
此规范循环遍历字段数组,并将描述字段与使用值查找上一级的键相匹配。
我正在尝试为以下输入创建颠簸转换:
{
"admin": [
{
"heading": "header1",
"fields": [
{
"description": "Name",
"value": "John"
},
{
"description": "Foo",
"value": "Bar"
}
],
"id": "123456"
},
{
"heading": "header2",
"fields": [
{
"description": "Name",
"value": "Jane"
},
{
"description": "Foo",
"value": "Bar"
}
],
"id": "789123"
}
]
}
所需输出为:
{
"admin":
{
"header1":
{
"Name" : "John",
"Foo": "Bar",
"id": "123456"
},
"header2":
{
"Name" : "Jane",
"Foo": "Bar"
"id": "789123"
},
}
}
我刚刚开始了解摇晃变换的基础知识,但这对于嵌套结构来说似乎有点复杂。
此规范可满足您的需求
[
{
"operation": "shift",
"spec": {
"*": {
"*": {
"id": "admin.@(1,heading).id",
"*": {
"*": {
"value": "admin.@(3,heading).@(1,description)"
}
}
}
}
}
}
]
此规范循环遍历字段数组,并将描述字段与使用值查找上一级的键相匹配。