Skip to main content
Verwenden Sie defineField(), um einem Objekt, das Ihnen nicht gehört, ein Feld hinzuzufügen – ein Standard-Twenty-Objekt wie Person oder Company oder ein Objekt, das von einer anderen installierten App bereitgestellt wird. Im Gegensatz zu Inline-Feldern, die innerhalb von defineObject deklariert werden, benötigen eigenständige Felder einen objectUniversalIdentifier, um anzugeben, welches Objekt sie erweitern.
src/fields/company-loyalty-tier.field.ts

Hauptpunkte

  • Der objectUniversalIdentifier identifiziert das Zielobjekt. Für Standard-Twenty-Objekte importieren Sie die Konstante aus twenty-sdk:
  • Wenn Sie Felder inline innerhalb von defineObject() definieren, benötigen Sie objectUniversalIdentifier nicht – es wird vom übergeordneten Objekt geerbt.
  • defineField() ist die einzige Möglichkeit, Felder zu Objekten hinzuzufügen, die Sie nicht mit defineObject() erstellt haben.
  • Der Speicherort der Datei liegt bei Ihnen. Die Konvention ist src/fields/\<name>.field.ts, aber das SDK erkennt Felder überall in src/.
  • Um eine Registerkarte zu einem Standard-Seitenlayout hinzuzufügen (z. B. der Aufgaben- oder Unternehmensdetailseite), verwenden Sie definePageLayoutTab mit STANDARD_PAGE_LAYOUT_UNIVERSAL_IDENTIFIERS aus twenty-sdk/define.

Hinzufügen einer Relation zu einem bestehenden Objekt

Um ein Relationsfeld hinzuzufügen (z. B. zur Verknüpfung Ihres benutzerdefinierten Objekts mit einer Standard-Person), verwenden Sie defineField() mit FieldType.RELATION. Das Muster ist dasselbe wie bei Inline-Relationen, jedoch mit explizit gesetztem objectUniversalIdentifier. Siehe Relations für das bidirektionale Muster.