Skip to main content

Collections MongoDB

1. Introduction à MongoDB dans Softyflow

Dans l'écosystème Softyflow, les Collections sont basées sur MongoDB, une base de données puissante, multiplateforme et orientée document. MongoDB est réputé pour ses hautes performances, sa haute disponibilité et sa facilité de mise à l'échelle, ce qui en fait un choix idéal pour gérer les données de votre application. Il fonctionne sur le concept de collections et de documents, ce qui offre une alternative flexible et évolutive aux bases de données relationnelles traditionnelles (SGBDR).

Un aperçu des collections MongoDB dans l'environnement Softyflow.
Un aperçu des collections MongoDB dans l'environnement Softyflow.

1.1. Comprendre les Concepts de Base

Pour utiliser efficacement les Collections dans Softyflow, il est important de comprendre la structure fondamentale de MongoDB.

1.1.1. Bases de Données

Une Base de Données agit comme un conteneur physique pour vos collections. Chaque base de données a son propre ensemble de fichiers sur le système de fichiers, et un seul serveur MongoDB peut gérer plusieurs bases de données.

1.1.2. Collections

Une Collection est un regroupement de documents MongoDB, analogue à une table dans une base de données relationnelle. Elle existe au sein d'une seule base de données et n'impose pas de schéma rigide. Cela signifie que les documents au sein de la même collection peuvent avoir des champs différents, bien qu'ils servent généralement un objectif similaire ou connexe.

1.1.3. Documents

Un Document est un ensemble de paires clé-valeur où toutes les données sont stockées. Les documents présentent un schéma dynamique, ce qui permet une flexibilité significative. Les documents de la même collection n'ont pas besoin de partager la même structure, et les champs communs peuvent contenir différents types de données.

1.1.3.1. Exemple de Structure de Document

Voici un exemple de ce à quoi ressemble un document MongoDB. Cette structure permet des données complexes et imbriquées.

{
"_id": "ObjectId(\"7df78ad8902c\")",
"title": "Aperçu de MongoDB",
"description": "MongoDB est une base de données NoSQL",
"by": "Tutorials Point",
"tags": ["mongodb", "database", "NoSQL"],
"likes": 100,
"comments": [
{
"user": "utilisateur1",
"message": "Mon premier commentaire",
"dateCreated": "new Date(\"2011-01-20T02:15:00Z\")",
"like": 0
},
{
"user": "utilisateur2",
"message": "Mon deuxième commentaire",
"dateCreated": "new Date(\"2011-01-25T07:45:00Z\")",
"like": 5
}
]
}

Le champ _id est un nombre hexadécimal de 12 octets qui garantit que chaque document est unique. Vous pouvez fournir votre propre _id lors de l'insertion d'un document. Si vous ne le faites pas, MongoDB générera automatiquement un ID unique.

1.2. Ressources MongoDB Externes

Pour des informations plus approfondies sur les capacités de MongoDB, vous pouvez consulter la documentation officielle :

  • Opérateurs de Requête et de Projection : Ces opérateurs vous permettent de localiser des données et de modifier leur présentation.
  • Opérateurs de Mise à Jour : Ces opérateurs vous permettent de modifier des données ou d'ajouter de nouvelles données à votre base de données.
  • Étapes du Pipeline d'Agrégation : Découvrez les étapes disponibles dans le Pipeline d'Agrégation.
  • Opérateurs du Pipeline d'Agrégation : Explorez les opérateurs utilisés pour définir et manipuler des documents dans les étapes du pipeline.

2. Travailler avec les Collections dans Softyflow

Softyflow simplifie le processus de création et de gestion des collections MongoDB directement depuis le studio.

2.1. Créer une Nouvelle Collection

Pour commencer, naviguez vers l'onglet Collection dans votre projet Softyflow et donnez un nom à votre nouvelle collection.

Pour créer une nouvelle collection, naviguez vers l'onglet 'Collection' dans le studio Softyflow et entrez un nom pour votre collection.
Pour créer une nouvelle collection, naviguez vers l'onglet 'Collection' dans le studio Softyflow et entrez un nom pour votre collection.

2.2. Effectuer des Opérations CRUD

Les opérations CRUD (Créer, Lire, Mettre à jour, Supprimer) dans MongoDB sont effectuées sur une seule collection à la fois. Softyflow fournit une interface conviviale et des méthodes SDK pour gérer ces opérations.

Softyflow fournit une interface conviviale pour effectuer des opérations CRUD (Créer, Lire, Mettre à jour, Supprimer) sur une collection.
Softyflow fournit une interface conviviale pour effectuer des opérations CRUD (Créer, Lire, Mettre à jour, Supprimer) sur une collection.

2.2.1. Opérations de Création (Insertion)

Les opérations d'insertion dans MongoDB sont atomiques au niveau du document unique. Softyflow prend en charge les méthodes d'insertion standard de MongoDB.

Exemple : Soumettre un Formulaire à une Collection

L'image suivante montre une action en plusieurs étapes déclenchée sur un formulaire. D'abord, validateForm s'assure que toutes les données sont valides. Ensuite, InsertOne enregistre les données du formulaire comme un nouveau document dans la collection. Enfin, refreshwidget met à jour l'interface utilisateur pour afficher la nouvelle entrée.

Configuration d'une action 'Insert' sur un formulaire pour ajouter un nouveau document à une collection.
Configuration d'une action 'Insert' sur un formulaire pour ajouter un nouveau document à une collection.

2.2.2. Opérations de Lecture (Recherche)

Les opérations de lecture vous permettent de récupérer des documents en utilisant des filtres de requête spécifiques. Vous pouvez en apprendre plus sur les filtres de requête dans la documentation de MongoDB.

  • Find dans Softyflow : Pour récupérer plusieurs documents, vous pouvez utiliser l'action find. Elle est disponible à la fois dans les formulaires utilisateur et les processus.

  • FindOne dans Softyflow : Pour récupérer un seul document, utilisez l'action findOne. Elle est également disponible dans les formulaires utilisateur et les processus.

Exemple : Charger des Données dans un Formulaire

Cette image montre une action qui trouve un document dans une collection et utilise ses données pour remplir les champs d'un formulaire.

Utilisation d'une action pour trouver et récupérer des documents d'une collection en fonction d'une requête.
Utilisation d'une action pour trouver et récupérer des documents d'une collection en fonction d'une requête.

2.2.3. Opérations de Mise à Jour

Les opérations de mise à jour modifient les documents existants dans une collection et sont atomiques au niveau du document. Soyez prudent, car les mises à jour sont permanentes.

Exemple : Mettre à Jour un Document à partir d'un Formulaire

L'image ci-dessous illustre une action configurée pour mettre à jour un document dans une collection en référençant son _id unique.

Configuration d'une action 'Update' pour modifier un document dans une collection.
Configuration d'une action 'Update' pour modifier un document dans une collection.
  • UpdateMany dans Softyflow : Pour mettre à jour plusieurs documents, un script est requis. Référez-vous à la méthode update du SDK du Modeleur Web pour obtenir des conseils.

  • ReplaceOne : Cette opération remplace un document entier, à l'exception du champ _id.

2.2.4. Opérations de Suppression

Les opérations de suppression sont utilisées pour supprimer des documents d'une collection et sont également atomiques au niveau du document. Comme les mises à jour, les suppressions sont permanentes.