Zalmoxis O zaman yukarıda @sineld 'ın dediği gibi, Handler'ınızda Exception tanımlayacaksnız.
Laravel, ModelNotFoundException fırlattığında ; oradaki istediğiniz kısma yönlendirilecek.
app\Exceptions\Handler.php dosyası içerisinde;
use Illuminate\Database\Eloquent\ModelNotFoundException;
public function register()
{
$this->reportable(function (Throwable $e) {
return $this->customModelNotFoundException ($request, $e);
});
}
public function customModelNotFoundException ($request, ModelNotFoundException $e)
{
if($e instanceof ModelNotFoundException ) {
// ne yapmak istiyorsanız...
}
}
Kodu biraz ezbere yazdım, hatalar olabilir. Bu mantıkta halledebilirsiniz diye düşünüyorum.
Bir diğer yol ise; Route Model Binding'den feragat etmek. Controller'a direkt $id gönderip find($id); ile modeli yüklersiniz.
Ardından elinizdeki $model değişkeni üzerinden
if (! $model){
// ne yapmak istiyorsanız
}