개요
이 가이드는 객체 간 관계를 가져오는 방법을 안내합니다—예를 들어, 사람을 회사에 연결하거나 기회를 사람에게 연결하는 방법.가져올 수 있는 항목: 단일 객체 유형을 가리키는 일대다 관계만 가능합니다. 여러 객체 유형을 가리키는 관계(예: 노트가 사람과 회사 모두에 연결)는 아직 가져오기를 지원하지 않습니다.
관계 이해하기
”일대다” 관계란?
일대다 관계에서는:- 하나의 회사에는 여러 사람(직원)이 있습니다
- 하나의 회사에는 여러 기회가 있습니다
- 한 사람에게는 여러 작업이 있습니다
Twenty에서 흔한 관계
| 관계 | ”One” 쪽(상위) | “Many” 쪽(하위) |
|---|---|---|
| 회사 → 사람 | 회사 | 사람들 |
| 회사 → 기회 | 회사 | 기회 |
| 사람 → 작업 | 사람 | 작업 |
| 사람 → 노트 | 사람 | 노트 |
1단계: “One”과 “Many” 쪽 식별하기
가져오기 전에 어떤 객체가 상위이고 어떤 객체가 하위인지 결정하세요. 스스로에게 물어보세요: “하나의 [객체 A]가 여러 [객체 B]를 가지는가?”- 하나의 회사 → 여러 사람 ✓ (회사가 상위)
- 한 사람 → 여러 회사 ✗ (잘못된 예—사람은 한 회사에 소속됩니다)
2단계: 상위 레코드를 먼저 가져오기
참조하려면 상위(“one” 쪽) 레코드가 Twenty에 먼저 존재해야 합니다. 가져오기 순서:- 회사 먼저(종속성 없음)
- 그다음 사람(회사에 연결)
- 세 번째로 기회(회사 및/또는 사람에 연결)
- 작업/노트(위 항목 중 하나에 연결)
3단계: 상위의 고유 식별자 확인
고유 식별자를 사용해 상위 레코드를 참조해야 합니다. 사용 가능한 옵션:| 상위 객체 | 사용 가능한 고유 식별자 |
|---|---|
| 회사 | id(UUID), domain(권장), 또는 사용자 지정 고유 필드 |
| 사람들 | id(UUID), email, 또는 사용자 지정 고유 필드 |
| 워크스페이스 멤버들 | id(UUID), email(이름 아님) |
| 사용자 지정 개체 | id(UUID), 또는 고유로 표시된 모든 필드 |
권장: 회사에는
domain, 사람에는 email을 사용하세요. 이들은 사람이 읽기 쉬우며 스프레드시트에서 확인하기도 쉽습니다.식별자 찾기
id가 필요하다면:
- Twenty에서 상위 레코드를 내보내세요
- 내보내기에는
id열이 포함됩니다 - 이 ID를 하위 레코드 파일에서 사용하세요
4단계: 관계 필드가 존재하는지 확인
가져오기 전에 객체 간에 관계 필드가 존재하는지 확인하세요. 확인 또는 생성 방법:- 설정 → 데이터 모델로 이동
- 하위 객체를 선택하세요(예: 사람)
- 상위를 가리키는 관계 필드를 찾으세요(예: 회사)
- 없다면 다음과 같이 생성하세요:
- + 필드 추가를 클릭하세요
- 필드 유형으로 관계를 선택하세요
- 상위 객체를 선택하세요
5단계: CSV 파일 준비
하위 CSV에 상위의 고유 식별자를 사용해 상위를 참조하는 열을 추가하세요.예: 사람 → 회사 연결
사람 CSV:companyDomain 열은 회사의 도메인을 참조합니다.
형식 요구 사항
| 식별자 | 형식 | 예시 |
|---|---|---|
| 도메인 | URL 형식 | https://acme.com |
| 이메일 | 표준 이메일 | john@acme.com |
| ID | UUID | c776ee49-f608-4a77-8cc8-6fe96ae1e43f |
중요 규칙
- 정확히 일치해야 함 — 값이 상위 레코드와 정확히 일치해야 합니다
- 고유 식별자는 하나만 매핑 —
companyId와companyDomain을 모두 포함하지 마세요 - 대소문자 구분 —
Acme.com≠acme.com
6단계: 업로드하고 관계 매핑하기
- 하위 객체로 이동하세요(예: 사람)
- ⋮ → 레코드 가져오기를 클릭
- CSV 파일을 업로드하세요
- 필드 매핑 단계에서:
- 관계 열을 찾으세요(예:
companyDomain) - 이를 회사 관계 필드에 매핑하세요
- 관계 열을 찾으세요(예:
- 나머지 매핑을 완료하세요
- 오류를 검토하고 확인하세요
7단계: 가져오기 확인
가져온 후:- 하위 레코드 몇 개를 엽니다(예: 사람)
- 관계 필드에 올바른 상위(예: 회사)가 표시되는지 확인하세요
- 상위 레코드를 열고 관련 레코드 섹션을 확인하세요
피해야 할 일반적인 실수
| 실수 | 문제 | 해결책 |
|---|---|---|
| 잘못된 가져오기 순서 | 회사보다 사람을 먼저 가져오기 | 항상 상위를 먼저, 그다음 하위를 가져오세요 |
| 잘못된 도메인 형식 | https://acme.com 대신 acme.com을 사용함 | https://가 포함된 전체 URL 형식을 사용하세요 |
| 여러 개의 고유 필드 | companyId와 companyDomain을 둘 다 매핑함 | 고유 식별자를 하나만 매핑하세요 |
| 관계 필드 누락 | 데이터 모델에 관계 필드가 존재하지 않음 | 가져오기 전에 설정 → 데이터 모델에서 생성하세요 |
| 존재하지 않는 레코드 | 상위 레코드가 Twenty에 존재하지 않음 | 상위 레코드를 먼저 가져오거나, 오타를 확인하세요 |
| 대소문자 불일치 | 파일에는 Acme.com, Twenty에는 acme.com | 대소문자가 정확히 일치하는지 확인하세요 |
워크스페이스 구성원에 연결하기
워크스페이스 구성원(팀원)에 연결할 때:- 이름이 아니라 이메일 주소를 사용하세요
- 예:
owner@yourcompany.com, “John Smith”가 아님
FAQ
상위 레코드에 도메인이나 이메일이 없으면 어떻게 하나요?
상위 레코드에 도메인이나 이메일이 없으면 어떻게 하나요?
다음 두 가지 옵션이 있습니다:
- Twenty의
id를 사용하세요(상위 레코드를 내보내 ID를 가져오세요) - 데이터 모델에 사용자 지정 고유 필드를 만들어 이전 시스템의 외부 ID를 저장하세요
기존 레코드의 관계를 업데이트할 수 있나요?
기존 레코드의 관계를 업데이트할 수 있나요?
예! 하위 레코드의 고유 식별자(예: 사람의 경우
email)와 새로운 관계 값을 포함하세요. 가져오기가 관계를 업데이트합니다.다대다 관계를 가져올 수 있나요?
다대다 관계를 가져올 수 있나요?
다대다 관계는 아직 가져오기를 지원하지 않습니다. 이는 2026년 상반기에 계획되어 있습니다.
여러 객체 유형(예: 노트를 사람과 회사 모두)에 연결할 수 있나요?
여러 객체 유형(예: 노트를 사람과 회사 모두)에 연결할 수 있나요?
여러 객체 유형을 가리키는 관계는 아직 가져오기/내보내기를 지원하지 않습니다. 이는 로드맵에 포함되어 있습니다.
상위 레코드가 존재하지 않으면 어떻게 되나요?
상위 레코드가 존재하지 않으면 어떻게 되나요?
해당 행에 대해 가져오기가 오류를 표시합니다. 다음 두 가지 방법 중 하나로 가능합니다:
- 상위 레코드를 먼저 가져온 뒤 다시 가져오세요
- 참조 값을 수정하세요
- 가져오기에서 해당 행을 제거하세요
관계가 올바르게 연결되지 않는 이유는 무엇인가요?
관계가 올바르게 연결되지 않는 이유는 무엇인가요?
일반적인 원인:
- 잘못된 형식(도메인은
https://domain.com을 사용) - 대소문자 불일치(정확한 철자 확인)
- 상위가 존재하지 않음(상위를 먼저 가져오기)
- 여러 식별자 매핑(하나만 사용)