O pacote spatie/laravel-activitylog
fornece funções fáceis de usar para registrar as atividades dos usuários do seu aplicativo. Ele também pode registrar automaticamente eventos de modelo. O pacote armazena todas as atividades na tabela activity_log
.
Aqui está uma demonstração de como você pode usá-lo:
activity ()-> log ( ' Look, I logged something ' );
Você pode recuperar todas as atividades usando o modelo SpatieActivitylogModelsActivity
.
Activity:: all ();
Aqui está um exemplo mais avançado:
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'
Aqui está um exemplo de log de eventos.
$ 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
Chamar $activity->changes()
retornará este array:
[
' attributes ' => [
' name ' => ' updated name ' ,
' text ' => ' Lorum ' ,
],
' old ' => [
' name ' => ' original name ' ,
' text ' => ' Lorum ' ,
],
];
Investimos muitos recursos na criação dos melhores pacotes de código aberto. Você pode nos apoiar comprando um de nossos produtos pagos.
Agradecemos muito que você nos envie um cartão postal de sua cidade natal, mencionando qual(is) de nossos pacotes você está usando. Você encontrará nosso endereço em nossa página de contato. Publicamos todos os cartões postais recebidos em nosso mural virtual de cartões postais.
Você encontrará a documentação em https://spatie.be/docs/laravel-activitylog/introduction.
Você está preso ao usar o pacote? Encontrou um bug? Você tem dúvidas gerais ou sugestões para melhorar o registro de atividades? Sinta-se à vontade para criar um problema no GitHub, tentaremos resolvê-lo o mais rápido possível.
Você pode instalar o pacote via compositor:
composer require spatie/laravel-activitylog
O pacote será registrado automaticamente.
Você pode publicar a migração com:
php artisan vendor:publish --provider= " SpatieActivitylogActivitylogServiceProvider " --tag= " activitylog-migrations "
Observação : a migração padrão pressupõe que você esteja usando números inteiros para seus IDs de modelo. Se você estiver usando UUIDs ou algum outro formato, ajuste o formato dos campos subject_id e causer_id na migração publicada antes de continuar.
Após publicar a migração você pode criar a tabela activity_log
executando as migrações:
php artisan migrate
Opcionalmente, você pode publicar o arquivo de configuração com:
php artisan vendor:publish --provider= " SpatieActivitylogActivitylogServiceProvider " --tag= " activitylog-config "
Consulte CHANGELOG para obter mais informações sobre alterações recentes.
Consulte ATUALIZAÇÃO para obter detalhes.
composer test
Consulte CONTRIBUINDO para obter detalhes.
Se você encontrou um bug relacionado à segurança, envie um email para [email protected] em vez de usar o rastreador de problemas.
E um agradecimento especial ao Caneco pelo logotipo e ao Ahmed Nagi por todo o trabalho que fez na v4
.
A licença MIT (MIT). Consulte Arquivo de licença para obter mais informações.