Champs structurés et média
Six types de champs qui stockent une valeur plus façonnée qu'une chaîne ou un nombre : données imbriquées, listes, couleurs, code source, coordonnées et codes scannables. Tous partagent les propriétés de base des champs.
| Type | Stocke |
|---|---|
json |
Des données JSON structurées. |
array |
Une liste de valeurs. |
color |
Une valeur de couleur hexadécimale. |
code |
Du code source avec coloration syntaxique. |
geolocation |
Des coordonnées latitude/longitude. |
barcode |
Une valeur de code-barres (catégorie média). |
Pour les types dérivés et interactifs — formula, count, autonumber, button — voir Champs calculés et d'action.
json
Stocke des données JSON structurées.
| Propriété | Description |
|---|---|
schema |
Objet optionnel, accepté et conservé. |
- { id: 5, name: metadata, type: json, required: false }schema ne valide rien. Il est déclaré comme un objet vide dans le schéma du champ : n'importe quel objet est donc accepté, et aucune sémantique JSON Schema n'est appliquée à la valeur stockée. Validez la forme dans une automatisation ou à la frontière applicative si cela compte.
array
Stocke une liste de valeurs.
| Propriété | Description |
|---|---|
itemType |
Type des éléments de la liste. Doit nommer un type pris en charge (voir ci-dessous). |
maxItems |
Nombre maximal d'éléments (entier ≥ 1). |
- { id: 6, name: tags, type: array, itemType: string, maxItems: 10 }Les deux propriétés sont appliquées. itemType n'est pas du texte libre : sa valeur est vérifiée par rapport à la liste ci-dessous lors de la validation de la configuration, et une graphie non reconnue est signalée nommément comme erreur de configuration. En son absence, la liste est stockée comme une liste de texte non typée.
Les graphies acceptées, et le type d'élément PostgreSQL que chacune sélectionne :
itemType |
Type d'élément |
|---|---|
text, string, varchar |
TEXT |
integer, int |
INTEGER |
bigint |
BIGINT |
smallint |
SMALLINT |
decimal, numeric, number |
DECIMAL |
float, double |
DOUBLE PRECISION |
real |
REAL |
boolean, bool |
BOOLEAN |
date |
DATE |
datetime, timestamp |
TIMESTAMPTZ |
time |
TIME |
uuid |
UUID |
json, jsonb |
JSONB |
Plusieurs graphies sont des alias d'un même type — string et text sélectionnent toutes deux TEXT : l'une ou l'autre convient et elles ne peuvent pas se comporter différemment. Sous SQLite, un tableau est stocké en JSON texte quel que soit le type d'élément.
color
Stocke une couleur au format hexadécimal, rendue avec un sélecteur de couleur.
| Propriété | Description |
|---|---|
default |
Couleur par défaut, valeur hexadécimale à 6 chiffres précédée d'un #. |
- { id: 7, name: brand_color, type: color, required: true, default: '#3B82F6' }C'est le seul champ de cette page doté d'une véritable vérification de format : default doit correspondre à un # suivi d'exactement six chiffres hexadécimaux. La forme abrégée à trois chiffres (#3BF) et les couleurs nommées (red) sont rejetées au décodage de la configuration.
code
Stocke du code source en texte brut, édité avec coloration syntaxique (CodeMirror 6).
| Propriété | Description |
|---|---|
language |
Obligatoire. Langage pour la coloration (par ex. javascript, typescript, yaml, json, python, sql). |
lineNumbers |
Booléen. Afficher les numéros de ligne. |
minLines |
Nombre minimal de lignes visibles (entier ≥ 1). |
maxLines |
Nombre maximal de lignes visibles avant défilement (entier ≥ 1). |
tabSize |
Taille de tabulation en espaces. Entier de 1 à 8. |
- { id: 8, name: snippet, type: code, language: typescript, lineNumbers: true, tabSize: 2 }language est obligatoire mais non contraint — les valeurs listées sont celles qui bénéficient d'une coloration, et une chaîne inconnue ou vide passe malgré tout la validation. tabSize n'a pas de valeur par défaut dans le schéma ; l'éditeur retombe sur 2 lorsque le champ l'omet. Pour afficher l'éditeur en lecture seule, réglez readOnly sur le champ de formulaire plutôt que sur la colonne — la lecture seule est une propriété d'un formulaire donné, pas de la valeur stockée.
geolocation
Stocke des coordonnées géographiques (latitude et longitude) pour les fonctionnalités de localisation. Il ne prend aucune propriété spécifique au-delà des propriétés de base des champs.
- { id: 9, name: office_location, type: geolocation, required: true }barcode
Stocke une valeur de code-barres pour l'identification de produits et l'inventaire. Il appartient à la catégorie média aux côtés des champs pièce jointe, et est documenté ici avec les autres champs de valeur spécialisés.
| Propriété | Description |
|---|---|
format |
Format du code-barres (par ex. EAN-13, CODE128). |
- { id: 10, name: product_barcode, type: barcode, required: true, format: EAN-13 }format est une chaîne non contrainte : elle consigne la symbologie employée par la valeur, et rien ne vérifie la valeur contre elle.
Pages connexes
- Champs calculés et d'action —
formula,count,autonumber,button. - Champs pièce jointe — les deux autres membres de la catégorie média.
- Présentation des types de champs — tous les types par catégorie.
- Présentation des tables — les propriétés de base communes à tous les champs.
- Validation de table — imposer une forme là où le schéma du champ ne le fait pas.
Dernière mise à jour 1 septembre 2026
Cette documentation a été rédigée avec de l'IA : des erreurs ou du contenu obsolète sont donc possibles. Sovrium est en bêta. Les contributions et corrections sont les bienvenues.