defineField() para añadir un campo a un objeto que no te pertenece — un objeto estándar de Twenty como Person o Company, u otro objeto proporcionado por otra aplicación instalada. A diferencia de los campos en línea declarados dentro de defineObject, los campos independientes requieren un objectUniversalIdentifier para especificar qué objeto extienden.
src/fields/company-loyalty-tier.field.ts
Puntos clave
-
objectUniversalIdentifieridentifica el objeto de destino. Para los objetos estándar de Twenty, importa la constante desdetwenty-sdk: -
Al definir campos en línea dentro de
defineObject(), no necesitasobjectUniversalIdentifier— se hereda del objeto padre. -
defineField()es la única forma de añadir campos a objetos que no creaste condefineObject(). -
La ubicación del archivo depende de ti. La convención es
src/fields/\<name>.field.ts, pero el SDK detecta campos en cualquier lugar desrc/. -
Para agregar una pestaña a un diseño de página estándar (por ejemplo, la página de detalles de la Tarea o de la Empresa), usa
definePageLayoutTabconSTANDARD_PAGE_LAYOUT_UNIVERSAL_IDENTIFIERSdetwenty-sdk/define.
Añadir una relación a un objeto existente
Para añadir un campo de relación (por ejemplo, vinculando tu objeto personalizado a unPerson estándar), usa defineField() con FieldType.RELATION. El patrón es el mismo que para las relaciones en línea, pero con objectUniversalIdentifier establecido explícitamente. Consulta Relaciones para conocer el patrón bidireccional.