いくつかの条件/クエリLaravelのEloquentモデルが見つからない場合、カスタム例外をスローすることは可能でしょうか?LaravelのEloquent ModelsでModelNotFoundExceptionをオーバーライドする方法は?
たとえば、私がPage
モデルを持っている場合、私はカスタム、PageNotFound
の例外を投げることができますか?レンダリング機能
public function render($request, Exception $e)
{
if ($e
instanceof
\Illuminate\Database\Eloquent\ModelNotFoundException)
{
abort(404);
}
return parent::render($request, $e);
}
EDIT
の先頭に次のコードを追加しapp/Exceptions/Handler.php
試みで
No query results for model [App\Page].
あなたが聞いた質問に答えるために、それぞれのモデルの 'findOrFail'と' firstOrFail'メソッドを文字通りオーバーライドして、 'ModelNotFoundException'を投げるのではなく、あなたが望むものを投げることができました。しかし、Tonyの答えで述べたように、代わりに 'getModel()'を呼び出すことができます。 – tam5