Parliamo del progetto
Partitech Sonata Extra Bundle

Sonata Extra Bundle: diario delle attività

Panoramica La funzione di registro delle attività del Sonata Extra Bundle è progettata per monitorare e registrare tutte le attività all'interno del sito di amministrazione. Offre una vista completa delle azioni effettuate, delle risorse coinvolte, delle d...

Sonata Extra Bundle: diario delle attività

Panoramica

La funzione di registro delle attività del Sonata Extra Bundle è progettata per monitorare e registrare tutte le attività all'interno del sito di amministrazione. Offre una vista completa delle azioni effettuate, delle risorse coinvolte, delle descrizioni delle attività e degli utenti che le hanno realizzate.

Funzionalità

  • Visualizzazione del tipo di azione: Mostra il tipo di azione eseguita (ad esempio, creare, aggiornare, eliminare).
  • Monitoraggio delle risorse: Identifica la risorsa che è stata interessata dall'azione.
  • Descrizione dell'azione: Fornisce una descrizione dettagliata dell'attività.
  • Identificazione dell'utente: Mostra l'utente che ha eseguito l'azione.
  • Vista dettagliata: Offre una visione approfondita degli elementi modificati in ogni attività.
  • Annullamento: Include una funzione che consente di invertire le modifiche quando possibile.

Schermi

  • Visualizzazione a elenco:

Journal_d'activité_index.png

  • Vista dettagliata:

Dettaglio_giornale_attività.png

Attivazione del registro delle attività

Per attivare la funzionalità del registro delle attività, la seguente configurazione del servizio deve essere aggiunta al vostro file di servizi:

sonata-extra.doctrine_activity_listener:
    class: Partitech\SonataExtra\EventListener\DoctrineActivityListener
    tags:
        - { name: doctrine.event_listener, event: prePersist }
        - { name: doctrine.event_listener, event: preUpdate }
        - { name: doctrine.event_listener, event: preRemove }
        - { name: doctrine.event_listener, event: onFlush }
        - { name: kernel.event_listener, event: sonata.admin.event.batch_action.pre_batch_action, method: onPreBatchAction }

Dettagli dell'implementazione

  • La classe DoctrineActivityListener è responsabile di ascoltare vari eventi di Doctrine e dell'amministrazione Sonata.
  • Eventi come prePersist, preUpdate, preRemove e onFlush sono monitorati per registrare le attività legate ai cambiamenti del ciclo di vita delle entità.
  • Il metodo onPreBatchAction gestisce la registrazione delle azioni di batch eseguite nell'amministrazione Sonata.

Utilizzo

Una volta attivata, la funzione Diario attività inizierà automaticamente a registrare le attività in base agli eventi configurati. I registri possono essere consultati nell'interfaccia di amministrazione, dove i dettagli di ogni attività sono visualizzati in modo chiaro.

Conclusione

Il registro delle attività è una funzionalità potente per monitorare e controllare le azioni all'interno dell'interfaccia di amministrazione di Sonata. Migliora la trasparenza e la responsabilità fornendo registri chiari e dettagliati di tutte le attività.

Adattare l’esempio alla versione installata

Gli esempi Symfony e Sonata rimangono legati alle versioni indicate nell’articolo. Symfony 4.x e Symfony 6.2 non sono più supportati: per un progetto attuale, utilizzate un ramo mantenuto e la documentazione corrispondente esattamente alle vostre dipendenze.

php bin/console about
composer show symfony/framework-bundle sonata-project/admin-bundle

Prima di riprendere il codice, controllate le firme, i servizi, le rotte e i template interessati. Aggiungete poi un test funzionale che copra le autorizzazioni, il codice HTTP e il risultato visibile.

Riferimento : versioni di Symfony supportate.

Condividi questo articolo