[英]How can I map inner fields to the same array object in jolt?
有這個輸入json:
{
"orderItems": [
{
"itemName": "Mozzz",
"quantity": 1
},
{
"itemName": "zer",
"quantity": 0,
"bar": {
"arr": [
{
"meta_itemName": "Small Barqs2",
"meta_quantity": 22
}
]
}
}
]
}
我正在嘗試將 orderItems 對象數組中的“meta_”前綴字段向上移動,從而消除bar和arr鍵。
我試過這個規范:
[
{
"operation": "shift",
"spec": {
"orderItems": {
"*": {
"quantity": "basket_item[#2].quantity",
"itemName": "basket_item[#2].itemName",
"bar": {
"arr": {
"*": {
"meta_itemName": "basket_item[#2].m2",
"meta_quantity": "basket_item[#2].m3"
}
}
}
}
}
}
}
]
但重命名為 m2 和 m3 的字段不會留在“zer”項內。
這個規范應該適合你(用https://jolt-demo.appspot.com/測試)
[
{
"operation": "shift",
"spec": {
"orderItems": {
"*": {
"bar": {
"arr": {
"*": { "meta_*": "orderItems[&4].&" }
}
},
"*": "orderItems[&1].&"
}
}
}
}
]
輸入的輸出:
{
"orderItems" : [ {
"itemName" : "Mozzz",
"quantity" : 1
}, {
"itemName" : "zer",
"quantity" : 0,
"meta_itemName" : "Small Barqs2",
"meta_quantity" : 22
} ]
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.