001c2097a3
Created by Github action <!-- mintlify-editor-comments:start --> Mintlify --- 0 threads from 0 users in Mintlify - No unresolved comments <!-- mintlify-editor-comments:end --> <!-- mintlify-comment--> <a href="https://dashboard.mintlify.com/twenty/twenty/editor/i18n-docs?source=pr_comment" target="_blank" rel="noopener noreferrer"><picture><source media="(prefers-color-scheme: dark)" srcset="https://d3gk2c5xim1je2.cloudfront.net/assets/open-mintlify-editor-dark.svg"><source media="(prefers-color-scheme: light)" srcset="https://d3gk2c5xim1je2.cloudfront.net/assets/open-mintlify-editor-light.svg"><img src="https://d3gk2c5xim1je2.cloudfront.net/assets/open-mintlify-editor-light.svg" alt="Open in Mintlify Editor"></picture></a> <!-- /mintlify-comment --> Co-authored-by: github-actions <github-actions@twenty.com>
149 lines
5.9 KiB
Plaintext
149 lines
5.9 KiB
Plaintext
---
|
||
title: 导入对象之间的关系
|
||
description: 通过 CSV 导入记录之间的关系。
|
||
---
|
||
|
||
## 概览
|
||
|
||
Twenty 支持在 CSV 导入过程中导入对象之间的关系。 这使您可以在数据迁移过程中关联记录(例如,将人员关联到公司)。
|
||
|
||
<Note>**当前支持导入**:两侧均指向单一对象类型的一对多关系(例如,人员 → 公司)。 指向多个对象类型的关系目前尚不支持导入/导出。</Note>
|
||
|
||
## Twenty 中关系的工作方式
|
||
|
||
### 一对多 / 多对一
|
||
|
||
Twenty 支持一条记录关联到多条记录的标准关系:
|
||
|
||
* **一个公司 → 多个人员**:一家公司可以有多名员工,但每个人只隶属于一家公司
|
||
* **一个公司 → 多个商机**:一家公司可以有多个商机,但每个商机只属于一家公司
|
||
|
||
### 可指向多种对象类型的关系
|
||
|
||
某些关系可以连接到不同类型的对象。 这有两种方式:
|
||
|
||
**模式 1:来自不同对象类型的多条记录,各自链接到一条记录**
|
||
|
||
多条笔记、任务或活动可以同时附加到多种对象类型:
|
||
|
||
* **笔记** 可以同时关联到一个人员、一个公司和一个商机
|
||
* **任务** 可以同时关联到一个人员、一个公司和一个商机
|
||
|
||
在此场景中,笔记/任务位于“多”的一侧。 每条记录在每种对象类型上都仅链接到一条记录。
|
||
|
||
<img src="/images/user-guide/fields/many-to-one-morph.png" style={{width:'100%'}} />
|
||
|
||
**模式 2:一条记录接收来自不同对象类型的多条记录的链接**
|
||
|
||
一个项目可以接收来自不同对象类型的多条记录的链接:
|
||
|
||
* **一个项目** 可以关联到许多人员、许多公司,并附加许多笔记
|
||
|
||
在此场景中,项目位于“一”的一侧。 来自不同对象的多条记录都可以链接到同一个项目。
|
||
|
||
<img src="/images/user-guide/fields/one-to-many-morph.png" style={{width:'100%'}} />
|
||
|
||
<Warning>
|
||
**导入/导出限制**:指向多个对象类型的关系(如 笔记 → 人员/公司/商机)在 CSV 导入或导出中**尚不支持**。
|
||
|
||
* **导入**:仅支持导入两侧均指向单一对象类型的一对多关系
|
||
* **导出**:指向多个对象类型的关系列目前会留空
|
||
|
||
此功能已在我们的路线图中。
|
||
</Warning>
|
||
|
||
### 当前不支持的内容
|
||
|
||
**多对多关系** 目前尚不可用。 例如,您目前无法创建如下关系:
|
||
|
||
* 多个人员关联到多个项目
|
||
|
||
<Note>多对多关系计划在 2026 年上半年推出。</Note>
|
||
|
||
## 在导入过程中关联记录
|
||
|
||
<Note>**提醒**:仅可导入指向单一对象类型的一对多关系(例如,人员 → 公司)。 指向多个对象类型的关系(例如,笔记 → 人员/公司/商机)目前尚不支持。</Note>
|
||
|
||
### 步骤 1:确定“一”和“多”两侧
|
||
|
||
首先,确定关系中哪个对象位于“一”侧,哪个对象位于“多”侧。
|
||
|
||
**示例**:
|
||
|
||
* **公司** 位于“一”侧(一个公司有许多员工)
|
||
* **人员** 位于“多”侧(每个人都隶属于一家公司)
|
||
|
||
### 步骤 2:确保“一”侧的记录已存在
|
||
|
||
在导入“多”侧之前,“一”侧的记录必须已在 Twenty 中存在。
|
||
|
||
* 请先导入或创建“一”侧的记录(例如,公司)
|
||
* 验证其唯一标识符。 可以是:
|
||
* `id`(Twenty 的 UUID)
|
||
* 一个被设置为唯一的字段(例如,公司的 `domain`,或您先前系统中的外部 ID)
|
||
|
||
<Warning>若引用了不存在的记录,导入将失败。</Warning>
|
||
|
||
### 步骤 3:准备您的 CSV 文件
|
||
|
||
在“多”侧的 CSV 文件中添加一列,用于引用“一”侧的记录。
|
||
|
||
**示例**:对于将人员关联到公司的 CSV 文件:
|
||
|
||
```
|
||
firstName,lastName,email,companyDomain
|
||
John,Smith,john@acme.com,https://acme.com
|
||
Jane,Doe,jane@widgets.co,https://widgets.co
|
||
```
|
||
|
||
**重要**:
|
||
|
||
* 该值必须与公司记录上的唯一字段**完全匹配**
|
||
* 对于域名,请使用**域名 URL**(例如,`https://acme.com`),而不是域名标签
|
||
* 每个关系只映射**一个**唯一标识符:这将使导入更顺畅
|
||
|
||
### 步骤 4:核实关系字段是否存在
|
||
|
||
在上传文件之前,确保对象之间已存在关系字段。
|
||
|
||
如果不存在:
|
||
|
||
1. 进入 **设置 → 数据模型**
|
||
2. 选择您的对象(例如,人员)
|
||
3. 创建一个指向目标对象(例如,公司)的关系字段
|
||
|
||
### 步骤 5:上传并映射关系
|
||
|
||
1. 通过导入界面上传您的 CSV 文件
|
||
2. 在字段映射步骤中,找到您的关系列(例如,`companyDomain`)
|
||
3. 将其映射到关系字段(例如,公司)
|
||
4. Twenty 将自动把每条记录关联到匹配的父级
|
||
|
||
### 可用于关系的唯一字段
|
||
|
||
| 对象 | 可用的唯一字段 |
|
||
| ---------------- | ----------------------- |
|
||
| **公司** | `id`、`domain`,任何自定义唯一字段 |
|
||
| **人员** | `id`、`email`,任何自定义唯一字段 |
|
||
| **工作区成员** | `id`、`email`(而非姓名) |
|
||
| **其他标准对象和自定义对象** | `id`,或任何标记为唯一的字段 |
|
||
|
||
<Note>**关联到工作区成员**:当关系指向工作区成员(您的团队登录 Twenty)时,请使用其**电子邮件地址**进行引用,而不是姓名。</Note>
|
||
|
||
<Note>我们建议对公司使用 `domain`,对人员使用 `email`,因为这些字段可读性强,且易于在电子表格中维护。</Note>
|
||
|
||
<Note>**提醒**:软删除的记录(可在“命令菜单 → 查看已删除的记录”中查看)计入唯一性判定标准。 如果您导入的记录与某条已删除记录具有相同的唯一值,该已删除记录将被还原。 详见[唯一性约束](/l/zh/user-guide/data-migration/capabilities/uniqueness-constraints)。</Note>
|
||
|
||
## 导入顺序规则
|
||
|
||
<Warning>
|
||
**务必先导入“一”端!**
|
||
|
||
1. **公司** 优先(无依赖关系)
|
||
2. **人员** 其次(关联到公司)
|
||
3. **商机** 第三(关联到公司/人员)
|
||
4. **自定义对象**(按其依赖关系)
|
||
|
||
在引用之前,父级记录必须已存在。
|
||
</Warning>
|