2b3b2362db
Created by Github action Co-authored-by: github-actions <github-actions@twenty.com>
52 lines
4.2 KiB
Plaintext
52 lines
4.2 KiB
Plaintext
---
|
|
title: Vue d'ensemble
|
|
description: Configurer l'application elle-même — son identité, ses autorisations par défaut et ce qui s'exécute au moment de l'installation.
|
|
icon: screwdriver-wrench
|
|
---
|
|
|
|
La **couche de configuration** d'une application Twenty est ce qui décrit l'application *à la plateforme* — son identité, les autorisations qu'elle détient et le code qui s'exécute lors de l'installation ou de la mise à niveau. Ces déclarations n'ajoutent pas de nouvelles structures de données ni de comportement à l'exécution ; elles indiquent à Twenty *qui est l'application* et *comment la configurer*.
|
|
|
|
```text
|
|
┌────────────────────────────────────────────────────────┐
|
|
│ 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
|
|
└──────────────────────────────────┘
|
|
```
|
|
|
|
## Dans cette section
|
|
|
|
<CardGroup cols={2}>
|
|
<Card title="Configuration de l'application" icon="rocket" href="/l/fr/developers/extend/apps/config/application">
|
|
`defineApplication` — identité, rôle par défaut, variables, métadonnées de la marketplace.
|
|
</Card>
|
|
<Card title="Rôles et autorisations" icon="shield-halved" href="/l/fr/developers/extend/apps/config/roles">
|
|
`defineRole` — déclarez ce que les fonctions logiques de votre application peuvent lire et écrire.
|
|
</Card>
|
|
<Card title="Hooks d'installation" icon="wrench" href="/l/fr/developers/extend/apps/config/install-hooks">
|
|
`definePreInstallLogicFunction` et `definePostInstallLogicFunction` — sauvegarder les données, préremplir les valeurs par défaut, valider les mises à niveau.
|
|
</Card>
|
|
</CardGroup>
|
|
|
|
## Comment les éléments s'articulent
|
|
|
|
* L'**application** est le point d'entrée. Chaque application comporte exactement un appel à `defineApplication()` qui pointe vers un **Rôle** par défaut.
|
|
* Le **Rôle** contrôle ce que les fonctions logiques et les composants frontaux de l'application peuvent lire et écrire. Suivez le principe du moindre privilège : accordez uniquement les autorisations dont votre code a réellement besoin.
|
|
* Les **hooks d'installation** s'exécutent lors de l'installation ou de la mise à niveau — la pré-installation avant la migration des métadonnées (ce qui permet de refuser une mise à niveau risquée), la post-installation après la migration (ce qui permet de préremplir les données par défaut selon le nouveau schéma).
|
|
|
|
<Note>
|
|
Les hooks d'installation partagent l'environnement d'exécution des [fonctions logiques](/l/fr/developers/extend/apps/logic/logic-functions) — même signature de handler, mêmes variables d'environnement, même client d'API typé — mais ils sont déclarés avec leurs propres fonctions `define` et vivent en dehors du modèle de déclencheurs habituel (HTTP, cron, événements de base de données).
|
|
</Note>
|