Observers

Observers: Se asocian a un modelo concreto y permite ejecutar acciones antes o después de cada uno de los métodos de ese modelo

php artisan make:observer PostObserver --model=Post
Ahora ya en app\Observers\PostObserver.php puedes las funciones relacionadas para ejecutar antes o después de cada una de las acciones del modelo.
Por ejemplo:
public function deleted: se ejecuta una vez borrado el registro
public function deleting: se ejecuta antes de borrar el registro
public function created: se ejecuta una vez creado el registro
public function creating: se ejecuta antes de crear el registro

Hay que registrar ese nuevo observer creado en app\Providers\EventServiceProvider.php:
use App\Models\Post;
use App\Observers\PostObserver

Y en el método boot:
Post::observe(PostObserver::class);

Otro ejemplo:
php artisan make:observer ProductObserver

Y en app\Observers\ProductObserver.php:
use App\Models\Product;
...
public function updated(Product $product) { // se llama automáticamente cada vez q se actualize ese modelo
...
}

No hay comentarios:

Publicar un comentario