defineField() pentru a adăuga un câmp la un obiect pe care nu îl dețineți — un obiect standard Twenty precum Person sau Company, sau un obiect livrat de o altă aplicație instalată. Spre deosebire de câmpurile inline declarate în interiorul defineObject, câmpurile independente necesită un objectUniversalIdentifier pentru a specifica obiectul pe care îl extind.
src/fields/company-loyalty-tier.field.ts
Puncte cheie
-
objectUniversalIdentifieridentifică obiectul țintă. Pentru obiectele standard Twenty, importați constanta dintwenty-sdk: -
Atunci când definiți câmpuri inline în
defineObject(), nu aveți nevoie deobjectUniversalIdentifier— acesta este moștenit de la obiectul părinte. -
defineField()este singura modalitate de a adăuga câmpuri la obiecte pe care nu le-ați creat cudefineObject(). -
Locația fișierului depinde de dumneavoastră. Convenția este
src/fields/\<name>.field.ts, dar SDK-ul detectează câmpuri oriunde însrc/. -
Pentru a adăuga o filă într-un layout standard de pagină (de ex. pagina de detalii pentru Task sau Company), folosește
definePageLayoutTabcuSTANDARD_PAGE_LAYOUT_UNIVERSAL_IDENTIFIERSdintwenty-sdk/define.
Adăugarea unei relații la un obiect existent
Pentru a adăuga un câmp de tip relație (de ex. pentru a lega obiectul personalizat de unPerson standard), folosiți defineField() cu FieldType.RELATION. Modelul este același ca pentru relațiile inline, dar cu objectUniversalIdentifier setat explicit. Consultați Relații pentru modelul bidirecțional.