src/objects/post-card.object.ts
Hauptpunkte
- Der
universalIdentifiermuss eindeutig und über Deployments hinweg stabil sein. - Jedes Feld benötigt
name,type,labelund einen eigenen stabilenuniversalIdentifier. - Das Array
fieldsist optional — Sie können Objekte ohne benutzerdefinierte Felder definieren. - Inline definierte Felder benötigen kein
objectUniversalIdentifier– er wird vom übergeordneten Objekt geerbt. Verwenden SiedefineField(), um Objekten Felder hinzuzufügen, die Ihnen nicht gehören. - Sie können mit
yarn twenty dev:add objectneue Objekte erzeugen; der Assistent führt Sie durch Benennung, Felder und Beziehungen. Siehe Architektur → Gerüste für Entitäten.
Basisfelder werden automatisch hinzugefügt. Wenn Sie ein benutzerdefiniertes Objekt definieren, erstellt Twenty Standardfelder wie
id, name, createdAt, updatedAt, createdBy, updatedBy und deletedAt für Sie. Sie müssen diese nicht in Ihrem fields-Array deklarieren – nur Ihre benutzerdefinierten Felder. Sie können ein Standardfeld überschreiben, indem Sie eines mit demselben Namen deklarieren, aber das ist nur selten eine gute Idee.Standardwerte
Wörtliche Zeichenfolgen-Standardwerte müssen in einfache Anführungszeichen innerhalb der Zeichenfolge eingeschlossen werden —defaultValue: "'Draft'", nicht defaultValue: "Draft". Deshalb verwendet das status-Feld oben `'${PostCardStatus.DRAFT}'`.
Nicht in Anführungszeichen gesetzte Zeichenfolgen sind für berechnete Standardwerte reserviert, die ausgewertet werden, wenn ein Datensatz erstellt wird:
'uuid'— generiert eine UUID (fürUUID-Felder)'now'— der aktuelle Zeitstempel (fürDATE_TIME-Felder)
{ source: "'MANUAL'" } in einem ACTOR-Feld) und für SELECT-/MULTI_SELECT-Werte. Ein wörtlicher Zeichenfolgen-Standardwert, der nicht in Anführungszeichen gesetzt ist, löst beim Build deiner App eine Warnung aus.
Was kommt als Nächstes
- Verbinden Sie dieses Objekt mit anderen – siehe Relationen für das bidirektionale Relationsmuster.
- Fügen Sie Objekten aus anderen Apps Felder hinzu – siehe Objekte erweitern für
defineField(). - Zeigen Sie dieses Objekt in der UI an – siehe Ansichten und Navigationsmenüeinträge, um es in der Seitenleiste zu platzieren.