Aller au contenu

Installation

phil/trash-bundle
PrérequisVersionPourquoi
PHP8.5 ou plus récentLe plancher que déclare le bundle
ext-mbstringtouteLes titres comptés en caractères
doctrine/orm^3.7La table de la corbeille
psr/clock, psr/event-dispatcher^1.0Le moment de la mise à la corbeille, par le service clock du conteneur, que FrameworkBundle enregistre une fois symfony/clock installé ; les événements
symfony/dependency-injection, symfony/config, symfony/uid^8.2La classe du bundle, sa configuration, les identifiants
phil/resource^0.1ResourceReference, le type et l'identifiant d'une ressource
symfony/consolefacultatifphil:trash:purge
composer require phil/trash-bundle
// config/bundles.php
return [
    // ...
    Phil\TrashBundle\PhilTrashBundle::class => ['all' => true],
];
# config/packages/phil_trash.yaml
phil_trash:
    retention: 30            # days a trashed resource is kept; 30 when left out
    retention_by_kind:
        page: 90             # pages are kept longer

Avec DoctrineBundle, le bundle mappe lui-même son entité ; les migrations de l'application créent phil_trash_item : id, resource_key (64), resource_id (255), title (255), payload (JSON), parent (kind:id, nullable), trashed_at, trashed_by (nullable), purge_after, avec des index sur la ressource et sur purge_after.