Vai al contenuto principale
Il config layer di un’app Twenty è ciò che descrive l’app alla piattaforma — la sua identità, le autorizzazioni che detiene e il codice che viene eseguito durante l’installazione o l’aggiornamento. Queste dichiarazioni non aggiungono nuove strutture di dati o comportamenti a runtime; dicono a Twenty chi è l’app e come configurarla.
┌────────────────────────────────────────────────────────┐
│ 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
       └──────────────────────────────────┘

In questa sezione

Configurazione dell'applicazione

defineApplication — identità, ruolo predefinito, variabili, metadati del marketplace.

Ruoli e permessi

defineRole — dichiara ciò che le funzioni logiche della tua app possono leggere e scrivere.

Hook di installazione

definePreInstallLogicFunction e definePostInstallLogicFunction — esegui il backup dei dati, imposta i valori predefiniti, convalida gli aggiornamenti.

Come si relazionano gli elementi

  • L’applicazione è il punto di ingresso. Ogni app ha esattamente una chiamata a defineApplication() e punta a un Ruolo come predefinito.
  • Il Ruolo controlla ciò che le funzioni di logica e i componenti front-end dell’app possono leggere e scrivere. Segui il principio del privilegio minimo: concedi solo le autorizzazioni di cui il tuo codice ha effettivamente bisogno.
  • Gli hook di installazione vengono eseguiti durante l’installazione o l’aggiornamento — pre-installazione prima della migrazione dei metadati (così può rifiutare un aggiornamento rischioso), post-installazione dopo la migrazione (così può inserire dati predefiniti in base al nuovo schema).
Gli hook di installazione condividono il runtime delle logic function — stessa firma dell’handler, stesse variabili d’ambiente, stesso client API tipizzato — ma sono dichiarati con le proprie funzioni define e vivono al di fuori del normale modello di trigger (HTTP, cron, eventi del database).