Le package spatie/laravel-activitylog
fournit des fonctions faciles à utiliser pour enregistrer les activités des utilisateurs de votre application. Il peut également enregistrer automatiquement les événements du modèle. Le package stocke toutes les activités dans la table activity_log
.
Voici une démo de la façon dont vous pouvez l'utiliser :
activity ()-> log ( ' Look, I logged something ' );
Vous pouvez récupérer toutes les activités à l'aide du modèle SpatieActivitylogModelsActivity
.
Activity:: all ();
Voici un exemple plus avancé :
activity ()
-> performedOn ( $ anEloquentModel )
-> causedBy ( $ user )
-> withProperties ([ ' customProperty ' => ' customValue ' ])
-> log ( ' Look, I logged something ' );
$ lastLoggedActivity = Activity:: all ()-> last ();
$ lastLoggedActivity -> subject ; //returns an instance of an eloquent model
$ lastLoggedActivity -> causer ; //returns an instance of your user model
$ lastLoggedActivity -> getExtraProperty ( ' customProperty ' ); //returns 'customValue'
$ lastLoggedActivity -> description ; //returns 'Look, I logged something'
Voici un exemple de journalisation des événements.
$ newsItem -> name = ' updated name ' ;
$ newsItem -> save ();
//updating the newsItem will cause the logging of an activity
$ activity = Activity:: all ()-> last ();
$ activity -> description ; //returns 'updated'
$ activity -> subject ; //returns the instance of NewsItem that was saved
L'appel de $activity->changes()
renverra ce tableau :
[
' attributes ' => [
' name ' => ' updated name ' ,
' text ' => ' Lorum ' ,
],
' old ' => [
' name ' => ' original name ' ,
' text ' => ' Lorum ' ,
],
];
Nous investissons beaucoup de ressources dans la création des meilleurs packages open source de leur catégorie. Vous pouvez nous soutenir en achetant l'un de nos produits payants.
Nous apprécions grandement que vous nous envoyiez une carte postale de votre ville natale, mentionnant le(s) forfait(s) que vous utilisez. Vous trouverez notre adresse sur notre page contact. Nous publions toutes les cartes postales reçues sur notre mur virtuel de cartes postales.
Vous trouverez la documentation sur https://spatie.be/docs/laravel-activitylog/introduction.
Vous vous retrouvez bloqué en utilisant le package ? Vous avez trouvé un bug ? Avez-vous des questions générales ou des suggestions pour améliorer le journal d'activité ? N'hésitez pas à créer un problème sur GitHub, nous essaierons de le résoudre dans les plus brefs délais.
Vous pouvez installer le package via composer :
composer require spatie/laravel-activitylog
Le package s’enregistrera automatiquement.
Vous pouvez publier la migration avec :
php artisan vendor:publish --provider= " SpatieActivitylogActivitylogServiceProvider " --tag= " activitylog-migrations "
Remarque : La migration par défaut suppose que vous utilisez des nombres entiers pour vos ID de modèle. Si vous utilisez des UUID ou un autre format, ajustez le format des champs subject_id et causer_id dans la migration publiée avant de continuer.
Après avoir publié la migration, vous pouvez créer la table activity_log
en exécutant les migrations :
php artisan migrate
Vous pouvez éventuellement publier le fichier de configuration avec :
php artisan vendor:publish --provider= " SpatieActivitylogActivitylogServiceProvider " --tag= " activitylog-config "
Veuillez consulter CHANGELOG pour plus d'informations sur les modifications récentes.
Veuillez consulter MISE À NIVEAU pour plus de détails.
composer test
Veuillez consulter CONTRIBUER pour plus de détails.
Si vous avez trouvé un bug concernant la sécurité, veuillez envoyer un mail à [email protected] au lieu d'utiliser le suivi des problèmes.
Et un merci tout particulier à Caneco pour le logo et à Ahmed Nagi pour tout le travail qu'il a mis en v4
.
La licence MIT (MIT). Veuillez consulter le fichier de licence pour plus d'informations.