You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Liquid转换时如何保留JSON对象字面量不变并替换属性名称

解决方法

你当前模板输出为空的原因是Liquid不会自动将对象类型的transaction.Data序列化为JSON字符串,需要使用Liquid内置的json过滤器完成序列化,该过滤器会自动适配Data的任意内部结构,完全满足你的兼容需求。

修正后的完整模板如下:

[
    {% for transaction in content %}
      {
        "MessageDetails": {{ transaction.Data | json }}
      }{% unless forloop.last %},{% endunless %}
    {% endfor %}
]

说明

  • json过滤器会自动把transaction.Data的内容转为合法JSON格式,不管内部是嵌套对象、数组、null还是其他类型,都可以正确输出,不需要手动适配结构变动
  • 增加了{% unless forloop.last %},{% endunless %}逻辑,避免最后一个数组元素末尾多出逗号,保证最终输出是合法的JSON格式
  • 不需要手动给transaction.Data的输出加额外引号,json过滤器会自动处理所有引号、转义字符的格式问题
  • 如果你使用的是不支持json过滤器的老旧Liquid版本,可以手动递归遍历Data的属性生成结构,目前绝大多数生产环境的Liquid运行时(包括Shopify Liquid、DotLiquid、Azure APIM/Logic Apps Liquid等)都已内置该过滤器,可直接使用。

内容的提问来源于stack exchange,提问作者Chris Halcrow

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 12:15:06