Historique des Entités
Vue d’ensemble
Section intitulée « Vue d’ensemble »L’historique des entités enregistre un instantané des valeurs d’entité à chaque création, mise à jour et suppression. Cela vous offre une piste d’audit complète avec les différences.
Activation de l’historique
Section intitulée « Activation de l’historique »Activez l’historique dans initializeRebaseBackend :
await initializeRebaseBackend({ // ... history: true});Ou avec des paramètres de rétention personnalisés :
history: { maxEntries: 200, // Par entité, les plus anciennes sont élaguées en premier (par défaut : 200) ttlDays: 90 // Les entrées plus anciennes que cette durée sont élaguées (par défaut : 90)}Par Collection
Section intitulée « Par Collection »Indiquez quelles collections doivent suivre l’historique :
const ordersCollection: EntityCollection = { slug: "orders", history: true, // Activer pour cette collection properties: { /* ... */ }};Comment ça marche
Section intitulée « Comment ça marche »- Le backend crée automatiquement une table
rebase.entity_history - À chaque création, mise à jour ou suppression, un instantané est enregistré avec :
- ID de l’entité, slug de la collection et nom de la table
- Les valeurs complètes de l’entité (avant et après)
- Horodatage et ID de l’utilisateur
- Type d’opération (
insert,update,delete)
- Les anciennes entrées sont élaguées périodiquement (toutes les 6 heures)
Point d’accès REST
Section intitulée « Point d’accès REST »GET /api/data/:slug/:entityId/historyRenvoie une liste d’entrées d’historique pour une entité spécifique, classées par les plus récentes en premier :
{ "data": [ { "id": 42, "entity_id": "123", "collection_slug": "orders", "operation": "update", "values": { "status": "shipped", "total": 99.99 }, "previous_values": { "status": "pending", "total": 99.99 }, "user_id": "admin-user-id", "created_at": "2025-01-15T10:30:00Z" } ]}Configuration de la rétention
Section intitulée « Configuration de la rétention »| Paramètre | Par défaut | Description |
|---|---|---|
maxEntries | 200 | Nombre maximum d’entrées par entité. Les plus anciennes sont élaguées. |
ttlDays | 90 | Les entrées plus anciennes que cette durée sont supprimées. |
Le backend exécute un nettoyage global de l’élagage toutes les 6 heures.
Étapes Suivantes
Section intitulée « Étapes Suivantes »- Callbacks d’entités — Hooks de cycle de vie
- Vue d’ensemble du Backend — Configuration complète du backend