使用jolt根据条件修改json

问题描述 投票:0回答:1

我得到了下面的json,如果它不为空,则需要根据条件连接

{
  "id": "4583",
  "price": "149.99",
  "sale_price": ""
}

有人可以帮我吗?

预期产出

{
  "id": "4583",
  "price": "149.99 EUR",
  "sale_price": ""
}

在上面的 json 价格中与欧元连接,但 sale_price 保持原样,因为它为空。

我正在使用下面的 jolt,它也更新了 sale_price。

{
    "operation": "modify-overwrite-beta",
    "spec": {
      "price": "=concat(@(1,price),' EUR')",
      "sale_price": ["=isNull", "=concat(@(1,sale_price),' EUR')"]
    }
  }
json concatenation transform jolt
1个回答
0
投票

希望以下Jolt解决方案对您有所帮助。

[
  {
    "operation": "modify-overwrite-beta",
    "spec": {
      "price": "=concat(@(1,price),' EUR')",
      "sale_amount": "=concat(@(1,sale_price),' EUR')"
    }
  },
  {
    "operation": "shift",
    "spec": {
      "sale_price": {
        "": {
          "@1": "sale_price"
        },
        "*": {
          "@(2,sale_amount)": "sale_price"
        }
      },
      "*": "&"
    }
  },
  {
    "operation": "remove",
    "spec": {
      "sale_amount": ""
    }
  }
]
© www.soinside.com 2019 - 2024. All rights reserved.