Ce document a été traduit par IA. Pour des informations précises, veuillez consulter la version anglaise.
L'instance DataSource liée au contexte d'exécution RunJS actuel, utilisée pour accéder aux collections, aux métadonnées des champs et pour gérer les configurations des collections au sein de la source de données actuelle. Elle correspond généralement à la source de données sélectionnée pour la page ou le bloc actuel (par exemple, la base de données principale main).
| Scénario | Description |
|---|---|
| Opérations sur une source de données unique | Obtenir les métadonnées des collections et des champs lorsque la source de données actuelle est connue. |
| Gestion des collections | Obtenir, ajouter, mettre à jour ou supprimer des collections sous la source de données actuelle. |
| Obtenir des champs par chemin | Utiliser le format nomCollection.cheminChamp pour obtenir les définitions de champs (prend en charge les chemins d'association). |
Remarque :
ctx.dataSourcereprésente une source de données unique pour le contexte actuel. Pour énumérer ou accéder à d'autres sources de données, veuillez utiliser ctx.dataSourceManager.
| Propriété | Type | Description |
|---|---|---|
key | string | Clé de la source de données, ex : 'main' |
name | string | Identique à la clé |
displayName | string | Nom d'affichage (prend en charge l'i18n) |
flowEngine | FlowEngine | Instance FlowEngine actuelle |
| Méthode | Description |
|---|---|
getCollections() | Récupère toutes les collections de la source de données actuelle (triées, avec les collections masquées filtrées). |
getCollection(name) | Récupère une collection par son nom ; name peut être nomCollection.nomChamp pour obtenir la collection cible d'une association. |
getAssociation(associationName) | Récupère la définition d'un champ d'association par nomCollection.nomChamp. |
getCollectionField(fieldPath) | Récupère la définition d'un champ par nomCollection.cheminChamp, prenant en charge les chemins d'association comme users.profile.avatar. |
| Besoin | Utilisation recommandée |
|---|---|
| Source de données unique liée au contexte actuel | ctx.dataSource |
| Point d'entrée pour toutes les sources de données | ctx.dataSourceManager |
| Obtenir une collection dans la source de données actuelle | ctx.dataSource.getCollection(name) |
| Obtenir une collection à travers les sources de données | ctx.dataSourceManager.getCollection(dataSourceKey, collectionName) |
| Obtenir un champ dans la source de données actuelle | ctx.dataSource.getCollectionField('users.profile.avatar') |
| Obtenir un champ à travers les sources de données | ctx.dataSourceManager.getCollectionField('main.users.profile.avatar') |
getCollectionField(fieldPath) est nomCollection.cheminChamp, où le premier segment est le nom de la collection et les segments suivants constituent le chemin du champ (prend en charge les associations, ex : user.name).getCollection(name) prend en charge le format nomCollection.nomChamp, retournant la collection cible du champ d'association.ctx.dataSource est généralement déterminé par la source de données du bloc ou de la page actuelle. Si aucune source de données n'est liée au contexte, il peut être undefined ; il est recommandé d'effectuer une vérification de valeur nulle avant utilisation.