从工作流早期环节获取关联条目#
节点输入数据中的每个条目都会反向链接至先前节点中用于生成该条目的源条目。当需要获取非直接前驱节点的更早环节条目时,这一特性尤为实用。
要访问工作流早期环节的关联条目,请使用 ("<节点名称>").itemMatching(currentNodeinputIndex) 方法。
例如,某工作流包含以下操作:
- 客户数据存储节点生成示例数据:
[
{
"id": "23423532",
"name": "Jay Gatsby",
"email": "gatsby@west-egg.com",
"notes": "Keeps asking about a green light??",
"country": "US",
"created": "1925-04-10"
},
{
"id": "23423533",
"name": "José Arcadio Buendía",
"email": "jab@macondo.co",
"notes": "Lots of people named after him. Very confusing",
"country": "CO",
"created": "1967-05-05"
},
...
]
- 编辑字段节点简化了此数据:
[
{
"name": "Jay Gatsby"
},
{
"name": "José Arcadio Buendía"
},
...
]
- 代码节点将电子邮件地址恢复给正确的人员:
[
{
"name": "Jay Gatsby",
"restoreEmail": "gatsby@west-egg.com"
},
{
"name": "José Arcadio Buendía",
"restoreEmail": "jab@macondo.co"
},
...
]
代码节点通过以下代码实现此功能:
| JavaScript | Python |
|---|---|
for(let i=0; i<$input.all().length; i++) { $input.all()[i].json.restoreEmail = $('Customer Datastore (n8n training)').itemMatching(i).json.email; } return $input.all(); | for i,item in enumerate(_input.all()): _input.all()[i].json.restoreEmail = _('Customer Datastore (n8n training)').itemMatching(i).json.email return _input.all(); |
您可以从 n8n 官网 | 项目匹配使用示例 查看并下载该示例工作流。