sme / laravel-model-life-events
dev-master
2024-04-08 06:50 UTC
Requires
- php: ^7.4
- laravel/framework: ^8.83
This package is auto-updated.
Last update: 2024-11-08 08:04:56 UTC
README
This library allows you to extend the work of Models life cycle methods in Laravel Framework
Install:
composer require sme/laravel-model-life-events
For example:
class Posts extends Model { public static function booted() { self::deleted(function (self $model) { // listening to the deletion event in the current model ... }); }
For this code, the listener will not work because the method calling the deleted event is missing from the Builder class
public static function deletePost(int $post_id) { return self::where('id', $post_id)->delete(); }
you can use the find($post_id) method then everything will work, but it is not always convenient
public static function deletePost(int $post_id) { $post = self::find($post_id); if ($post) { return $post->delete(); } }
To use the delete or update methods without additional first, find, etc. methods. You can use trait "HasEvents" in your models class
use SME\Laravel\Model\HasEvents; class Posts extends Model { use HasEvents; ...