Жидкое преобразование — как сохранить литерал объекта JSON без изменений

#json #liquid #dotliquid

Вопрос:

У меня есть JSON, который выглядит так:

 [
    {
        "Data": {
            "BagData": null,
            "OtherData": {
                "Responses": [
                    "test"
                ]
            }
        }
    },
    {
        "Data": {
            "BagData": {
                "BagWeight": 20.0,
                "ExceededBy": 0.0
            },
            "OtherData": null
        }
    }
]
 

Я пытаюсь преобразовать это, используя жидкий шаблон. Я хочу просто вывести литерал объекта JSON "Data" без изменений, но с использованием другого имени свойства, чтобы вывод был:

 [
    {
        "MessageDetails": {
            "BagData": null,
            "OtherData": {
                "Responses": [
                    "test"
                ]
            }
        }
    },
    {
        "MessageDetails": {
            "BagData": {
                "BagWeight": 20.0,
                "ExceededBy": 0.0
            },
            "OtherData": null
        }
    }
]
 

Я использую следующий шаблон преобразования Liquid, однако он ничего не выводит вместо transaction.Data ( content определенно содержит правильный массив литералов объектов JSON)

 [
    {% for transaction in content %}
      {
        "MessageDetails": {{ transaction.Data }},

      },
    {% endfor %}
]
 

Как вывести значение без "Data" изменений? Я хочу, чтобы это работало, даже если структура ценности "Data" изменится. Итак, если значение "Data" равно:

 {
  "SomethingCompletelyDifferent": null
}
 

Я все еще хочу, чтобы это появилось в выходных данных, чтобы конечный результат был:

 [
    {
        "MessageDetails" : {
            "SomethingCompletelyDifferent": null
        }
    },
    ...
]