Database
Cette classe fournit des méthodes pour interagir avec la base de données. Elle prend en charge les backends
MongoDB et SQLite et propose des opérations pour créer, mettre à jour, supprimer et interroger les
documents d'utilisateur et de level-role. Les méthodes définissent les timestamps ISO createdAt et
lastUpdated lors de la création ou de la mise à jour des enregistrements.
Méthodes
Database.getCollection()
Retourne une collection depuis la base de données.
Cette fonction ne peut être utilisée qu'avec MongoDB.
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| collection | string | ✅ | Le nom de la collection à récupérer. |
Returns Collection - Collection MongoDB
Database.createOne()
TOUTES les propriétés de query sont requises ici.
Crée un nouveau document dans la base de données. La méthode ajoute automatiquement les timestamps ISO
createdAt et lastUpdated. De nombreux champs de l'objet data sont optionnels (par exemple name,
user, level, xp et flags pour simply-xps). La méthode prend en charge MongoDB et SQLite.
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| query | UserOptions LevelRoleOptions | ✅ | Les options pour l'utilisateur ou le level-role. |
Returns Promise<UserResult | LevelRoleResult> - UserResult ou LevelRoleResult
Database.deleteMany()
Supprime plusieurs documents de la base de données. Retourne true lorsque le driver sous-jacent
renvoie un objet résultat (pour SQLite, le résultat de run() est considéré comme truthy en cas de succès).
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| query | UserOptions LevelRoleOptions | ✅ | Les options pour l'utilisateur ou le level-role. |
Database.deleteOne()
Supprime un seul document de la base de données.
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| query | UserOptions LevelRoleOptions | ✅ | Les options pour l'utilisateur ou le level-role. |
Returns Promise<boolean> - true si un document a été supprimé, sinon false
Database.findOne()
Récupère un document dans la base de données.
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| query | UserOptions LevelRoleOptions | ✅ | Les options pour l'utilisateur ou le level-role. |
Returns Promise<UserResult | LevelRoleResult> - UserResult ou LevelRoleResult
Database.find()
Récupère les documents d'une guilde donnée. Pour SQLite, les lignes simply-xps verront la colonne flags
reconvertie depuis du JSON en tableau. Le paramètre collection doit être simply-xps ou
simply-xp-levelroles.
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| collection | simply-xps simply-xp-levelroles | ✅ | Le nom de la collection à récupérer. |
| guild | string | ✅ | L'ID de la guilde. |
Returns Promise< UserResult[] | LevelRoleResult[] > - UserResult[] ou LevelRoleResult[]
Database.findAll()
Récupère tous les documents de la base de données.
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| collection | simply-xps simply-xp-levelroles | ✅ | Le nom de la collection à récupérer. |
Returns Promise< UserResult[] | LevelRoleResult[] > - UserResult[] ou LevelRoleResult[]
Database.updateOne()
Met à jour un document dans la base de données.
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| filter | UserOptions LevelRoleOptions | ✅ | Les options pour l'utilisateur ou le level-role. |
| update | UserOptions LevelRoleOptions | ✅ | La mise à jour à appliquer au document. |
| options | UpdateOneOptions | ❌ | Options pour la mise à jour (MongoDB seulement). |