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

请求编写Jolt转换Spec:仅处理user对象的manager字段

Jolt转换Spec实现:仅修改user类型对象的manager属性

需求说明

处理JSON数组时,仅对type为user的对象做如下修改:

  • 将原manager字段下的value与position字段拼接,存入新字段managerRef.info
  • 删除原manager字段
    type为account的对象保持原样。

输入示例

[
  {
    "type": "user",
    "name": "Alice",
    "manager": {
      "value": "Bob",
      "position": "Engineering Lead"
    }
  },
  {
    "type": "account",
    "accountId": "ACC-123",
    "balance": 5000
  },
  {
    "type": "user",
    "name": "Charlie",
    "manager": {
      "value": "David",
      "position": "Product Director"
    }
  }
]

期望输出示例

[
  {
    "type": "user",
    "name": "Alice",
    "managerRef": {
      "info": "Bob (Engineering Lead)"
    }
  },
  {
    "type": "account",
    "accountId": "ACC-123",
    "balance": 5000
  },
  {
    "type": "user",
    "name": "Charlie",
    "managerRef": {
      "info": "David (Product Director)"
    }
  }
]

Jolt转换Spec

[
  {
    "operation": "shift",
    "spec": {
      "*": {
        "type": {
          "user": {
            "@(2,name)": "[&3].name",
            "@(2,type)": "[&3].type",
            "@(2,manager.value)": "[&3].managerRef.info",
            "@(2,manager.position)": "[&3].managerRef.info_append"
          },
          "*": {
            "@(2)": "[&3]"
          }
        }
      }
    }
  },
  {
    "operation": "modify-overwrite-beta",
    "spec": {
      "*": {
        "managerRef": {
          "info": "=concat(@(1,info), ' (', @(1,info_append), ')')"
        }
      }
    }
  },
  {
    "operation": "remove",
    "spec": {
      "*": {
        "managerRef": {
          "info_append": ""
        }
      }
    }
  }
]

转换逻辑解释

  1. Shift操作:
    • 遍历数组中的每个元素,根据type字段分支处理
    • 对于user类型:提取name、type,分别将manager.value和manager.position存入managerRef.info和managerRef.info_append(临时字段)
    • 对于其他类型(这里是account):直接保留原对象的所有字段
  2. Modify操作:
    • 对user类型对象的managerRef.info进行拼接,将info和info_append格式化为"value (position)"的形式
  3. Remove操作:
    • 删除临时字段info_append,清理结果结构

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.07 14:25:34