Exception $e で補足しようとして失敗したのでメモ。
例外を捕捉したいコントローラに、以下の名前空間を登録すれば、
ModelNotFoundExceptionで捕捉出来るようになります。
use Illuminate\Database\Eloquent\ModelNotFoundException;
例:userコントローラで捕捉したい場合
use Illuminate\Database\Eloquent\ModelNotFoundException; class UsersController extends Controller { ・・・ try { Model::findOrFail(1); } catch (ModelNotFoundException $e) { // 例外時の処理 }
通常は捕捉しなければ404ページが表示されますが、
例えば捕捉すればリダイレクト先を変えることも可能です。
try { Model::findOrFail(1); } catch (ModelNotFoundException $e) { return redirect('fail'); }
参考:マニュアル Not Found例外 の項目
https://readouble.com/laravel/5.6/ja/eloquent.html