[英]Liquid transform - how to retain JSON object literal unchanged
我有 JSON 看起來像這樣:
[
{
"Data": {
"BagData": null,
"OtherData": {
"Responses": [
"test"
]
}
}
},
{
"Data": {
"BagData": {
"BagWeight": 20.0,
"ExceededBy": 0.0
},
"OtherData": null
}
}
]
我正在嘗試使用 Liquid 模板對此進行轉換。 我想簡單地 output JSON object "Data"
的文字不變,但使用不同的屬性名稱,以便 output 是:
[
{
"MessageDetails": {
"BagData": null,
"OtherData": {
"Responses": [
"test"
]
}
}
},
{
"MessageDetails": {
"BagData": {
"BagWeight": 20.0,
"ExceededBy": 0.0
},
"OtherData": null
}
}
]
我正在使用以下 Liquid 轉換模板,但它沒有輸出任何內容來代替transaction.Data
( content
肯定包含 JSON object 文字的正確數組)
[
{% for transaction in content %}
{
"MessageDetails": {{ transaction.Data }},
},
{% endfor %}
]
如何讓 output 的"Data"
值不變? 即使"Data"
值的結構發生變化,我也希望它能正常工作。 因此,如果"Data"
的值為:
{
"SomethingCompletelyDifferent": null
}
我仍然希望它出現在 output 中,因此最終的 output 將是:
[
{
"MessageDetails" : {
"SomethingCompletelyDifferent": null
}
},
...
]
您是否嘗試過進一步分解 JSON 以使其更具體?
{% for transaction in content %}
{
"MessageDetails": {
"BagData": {
"BagWeight": {{transaction.MessageDetails.BagData.BagWeight}},
"ExceededBy": {{transaction.MessageDetails.BagData.ExceededBy}}
},
"OtherData": {{transaction.MessageDetails.OtherData}}
}
},
{% endfor %}
在編寫模板時,我發現您需要具體說明您希望它看起來如何。 寫出每個鍵,然后調用它的值,您也可以按照自己的需要對 JSON 進行模板化。
for 循環映射它收到的每個 object,並將創建您根據 object 模板化的內容。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.