Collections
Dans la définition d'une collection, plusieurs options peuvent être configurées pour personnaliser son comportement et ses fonctionnalités :
slug: Obligatoire. C'est un identifiant unique pour la collection, généralement utilisé pour le référencement et l'URL.
type: Détermine le type de collection. Cela peut être "document" pour une collection de données structurées ou "media" pour une collection de fichiers multimédias.
access: Gère les contrôles d'accès à la collection. Cette option permet de définir qui peut lire, écrire ou modifier les éléments de la collection.
auth: Fonction d'authentification liée à une collection
hooks: Permet de spécifier une liste de fonctions exécutées à des étapes spécifiques du cycle de vie d'une collection, comme avant ou après la création d'un document.
fields: Contient la définition des champs de la collection. C'est ici que l'on spécifie la structure et le type de données que chaque document de la collection doit posséder.
indexes: Configuration d'indexations supplémentaires pour optimiser la recherche et l'accès aux données.
customApi: Permet de créer des API personnalisées pour étendre les fonctionnalités de la collection.
media: Configure les options spécifiques pour le téléchargement et la gestion des médias, s'il s'agit d'une collection de type média.
privateFields: Liste des champs qui doivent rester privés, masqués dans certaines conditions ou pour certains utilisateurs.
description: Fournit une description textuelle de la collection, utile pour la documentation ou l'administration.
init: Détermine la configuration initiale à appliquer avant l'exécution des hooks de création de la collection, permettant de préparer ou préconfigurer certains aspects de la collection.
Creation de model
Création d'un model de collection
import {define} from "@dnax/core"
export default define.Collection({
slug:"users",
fields:[]
})Liste des options
{
slug:"", //string- Nom de la collecton
type:"document", // "document"|"media" - Type de model
access:{}, // Controle d'accès
hooks:{}, // Liste des hooks
fields:[], // Champs de la collection
indexes:[] // Configuration des indexations supplémentaires
customApi:{} ,// Creation d'api personnalisé
media:{}, // Configuration de la fonctionnalité media/upload
description:"",
init:{} // Configuration avant les hooks de creation de collection
api:{
fields:{
hidden:[] // List des champs privé à cacher dans l'API
select:[] // List des champs à retourner uniquement
}
}
}Last updated