Accueil
NexoPOS

Filtre de méthode : getDeclaredDependencies

Ce filtre, qui s’applique aux modèles utilisant le trait NsDependable, est utilisé pour modifier ou étendre les ressources de dépendances vérifiées lors de la suppression de toute entité. Vous remplacerez « Class » par la classe Crud correspondante pour laquelle vous souhaitez étendre la vérification des dépendances.


<?php
namespace Modules\YourModule\Providers;

use Illuminate\Support\Provider as CoreProvider;
use App\Classes\Hook;
use App\Classes\Model;
use App\Models\User;
use Modules\YourModule\Models\Book;

class ServiceProvider extends CoreProvider
{
    public function register()
    {
        Hook::filter( User::method( 'setDependencies' ), function( $dependants ) {
            $dependants[ Book::class ]  =   Model::dependant(
                local_index: 'id',
                local_name: 'name',
                foreign_index: 'user_id',
                foreign_name: 'name'
            );
            
            return $dependants;
        });
    }
}

Dans l’exemple ci-dessus, nous étendons la dépendance déclarée par l’utilisateur afin de garantir qu’un utilisateur n’est pas supprimé s’il est encore référencé dans la table des livres.