Laravel Deletable, Eloquent modellerinizdeki silme kısıtlamaları getiren bir pakettir. Paket, RestrictsDeletion
silmeyi kontrol etmek istediğiniz modeller için bir özellik sağlar :
namespace App;use F9Web\LaravelDeletable\Traits\RestrictsDeletion;
use Illuminate\Database\Eloquent\Model;class User extends Model
{
use RestrictsDeletion; public function isDeletable(): bool
{
return $this->orders->isEmpty();
}
}
Bir modelin isDeletable()
method’u döndüğünde false
, bir model exception oluşur:
namespace App\Controllers;use F9Web\LaravelDeletable\Exceptions\NoneDeletableModel;
use App\User;class UsersController
{
public function destroy(User $user): bool
{
try {
$user->delete();
} catch (NoneDeletableModel $e) {
dd($e->getMessage());
}
}
}
Bu paket hakkında daha fazla bilgi edinebilir, tüm kurulum talimatlarını alabilir ve GitHub’daki kaynak kodunu f9webltd / laravel-deletable adresinde inceleyebilirsiniz.
Yorum Yap