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

如何在Apache NiFi中用JoltTransformJson复制_id到teamId字段

正确的Jolt配置方案

你之前的问题出在Jolt规则里不能直接使用NiFi的表达式语言${_id},Jolt有自己的字段引用语法。要引用根节点的_id,需要使用Jolt的相对路径引用语法@(2,_id),具体规则如下:

[
  {
    "operation": "modify-overwrite-beta",
    "spec": {
      "team": {
        "*": {
          "teamId": "@(2,_id)"
        }
      }
    }
  }
]

语法说明

  • @(2,_id)中的2表示向上回溯2层路径:
    1. 第一层:当前的数组元素(team下的*)
    2. 第二层:team字段本身,再往上就是根节点,此时可以获取到根节点的_id字段值
  • modify-overwrite-beta操作会覆盖每个team元素里原有的teamId值,正好匹配你的需求

转换后结果

执行上述规则后,输出的JSON会变成:

{
  "_id": "gkpYcLowAADQiQiiX",
  "team": [
    {
      "userId": "L2Q6Nd9Z7KhdXgeis",
      "role": "user",
      "teamId": "gkpYcLowAADQiQiiX"
    },
    {
      "userId": "FFsDDYrTLJiCgW5iz",
      "role": "user",
      "teamId": "gkpYcLowAADQiQiiX"
    },
    {
      "userId": "FzqcQEBjbT7TpxQbN",
      "role": "leader",
      "teamId": "gkpYcLowAADQiQiiX"
    }
  ]
}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.06 05:07:21