src/objects/post-card.object.ts
핵심 요점
universalIdentifier는 배포 전반에서 고유하고 안정적이어야 합니다.- 각 필드는
name,type,label및 고유하고 안정적인universalIdentifier가 필요합니다. fields배열은 선택 사항입니다. 사용자 정의 필드 없이도 개체를 정의할 수 있습니다.- 여기에서 정의된 인라인 필드는
objectUniversalIdentifier가 필요하지 않습니다 — 상위 개체에서 상속됩니다. 소유하지 않은 개체에 필드를 추가하려면defineField()를 사용하세요. yarn twenty dev:add object를 사용하여 새 개체를 스캐폴딩할 수 있으며, 이름, 필드, 관계 설정 과정을 안내합니다. Architecture → Scaffolding entities를 참조하세요.
기본 필드는 자동으로 추가됩니다. 사용자 정의 개체를 정의하면 Twenty가
id, name, createdAt, updatedAt, createdBy, updatedBy, deletedAt와 같은 표준 필드를 자동으로 생성합니다. 이 필드들은 fields 배열에 선언할 필요가 없습니다 — 사용자 정의 필드만 선언하면 됩니다. 동일한 이름으로 필드를 선언하여 기본 필드를 재정의할 수 있지만, 이는 거의 바람직하지 않습니다.기본값
리터럴 문자열 기본값은 문자열 내부에서 작은따옴표로 감싸야 합니다. 즉,defaultValue: "'Draft'"처럼 작성해야 하며, defaultValue: "Draft"처럼 작성하면 안 됩니다. 그래서 위의 status 필드는 `'${PostCardStatus.DRAFT}'`를 사용합니다.
따옴표로 감싸지 않은 문자열은 레코드가 생성될 때 평가되는 계산형 기본값으로 예약되어 있습니다.
'uuid'— UUID를 생성합니다 (UUID필드용).'now'— 현재 타임스탬프입니다 (DATE_TIME필드용).
ACTOR 필드의 { source: "'MANUAL'" })와 SELECT/MULTI_SELECT 값에도 적용됩니다. 따옴표로 감싸지 않은 리터럴 문자열 기본값은 앱을 빌드할 때 경고를 발생시킵니다.
다음 단계
- 이 개체를 다른 개체와 연결 — 양방향 관계 패턴은 Relations를 참조하세요.
- 다른 앱의 개체에 필드 추가 —
defineField()에 대해서는 Extending Objects를 참조하세요. - UI에 이 개체 표시 — 사이드바에 배치하려면 Views 및 Navigation Menu Items를 참조하세요.