Salt la conținutul principal
Stratul de configurare al unei aplicații Twenty este cel care descrie aplicația pentru platformă — identitatea ei, permisiunile pe care le deține și codul care rulează în timpul instalării sau actualizării. Aceste declarații nu adaugă noi structuri de date sau comportamente la rulare; ele îi spun lui Twenty cine este aplicația și cum să fie configurată.
┌────────────────────────────────────────────────────────┐
│ Application — identity, default role, variables,       │
│               marketplace metadata                     │
│                                                        │
│   ┌──────────────────────────────────────────────────┐ │
│   │ Role — what the app's logic functions can read   │ │
│   │ and write (referenced by Application)            │ │
│   └──────────────────────────────────────────────────┘ │
└────────────────────────────────────────────────────────┘

                          ▼  (at install / upgrade time)
       ┌──────────────────────────────────┐
       │ Pre-install hook                 │  before metadata migration
       └──────────────────────────────────┘
       ┌──────────────────────────────────┐
       │ Post-install hook                │  after metadata migration
       └──────────────────────────────────┘

În această secțiune

Configurația aplicației

defineApplication — identitate, rol implicit, variabile, metadate pentru marketplace.

Roluri și permisiuni

defineRole — declară ce pot citi și scrie funcțiile de logică ale aplicației dvs.

Hook-uri de instalare

definePreInstallLogicFunction și definePostInstallLogicFunction — fac backup la date, introduc valori implicite, validează actualizările.

Cum se leagă componentele între ele

  • Aplicația este punctul de intrare. Fiecare aplicație are exact un apel defineApplication(), iar acesta indică un singur Rol ca implicit.
  • Rolul controlează ce pot citi și scrie funcțiile de logică și componentele front-end ale aplicației. Respectați principiul celui mai mic privilegiu: acordați doar permisiunile de care codul dvs. are cu adevărat nevoie.
  • Hook-urile de instalare rulează în timpul instalării sau actualizării — pre-install înainte de migrarea metadatelor (astfel încât să poată refuza o actualizare riscantă), post-install după migrare (astfel încât să poată introduce date implicite în noua schemă).
Hook-urile de instalare împart același runtime cu funcțiile de logică — aceeași semnătură a handlerului, aceleași variabile de mediu, același client API tipizat — dar sunt declarate cu propriile lor funcții define și există în afara modelului obișnuit de declanșare (HTTP, cron, evenimente de bază de date).