lorenzofk / laravel-observable
Boot the Observable classes automatically into the Laravel models
Requires
- php: >=7.4
Requires (Dev)
- orchestra/testbench: ^6.0
- phpunit/phpunit: ^9.0
README
Installation
You can install the package via composer:
composer require lorenzofk/laravel-observable
About
Laravel Observable.
If you work with Laravel, you've probably already needed to use the Observer
pattern to observe specific events in your Models
.
So, this package provides an easy way to define one or more Observer
for your models.
Why to use?
I've decided to create this tool to solve a problem we were facing on a big project I work on.
Usually, we have to define the Model and its Observer in the app/Providers/AppServiceProvider.php
class or even to create a specific Provider
to define this relationship.
With this Trait
now we are able to define the Observer
in the Model
itself, which is much easier and quicker to do.
Usage
Use the Observable
trait in any Eloquent Model, you must also add the $observer
property. This property must be a string
or an array
.
use lorenzofk\Observable\Observable; class User extends Model { use Observable; protected $observer = UserObserver::class; }
And that's it! You don't need to do anything else.
Testing
composer test
Changelog
Please see CHANGELOG for more information what has changed recently.
Contributing
Please see CONTRIBUTING for details.
Credits
License
The MIT License (MIT). Please see License File for more information.