ラボ > Laravel、Lumen:views関連、エラー関連
laravel8 abort()のメモ
エラーページに飛ばすのに「abort()」を使ったらエラーになるという面倒な仕様なので、調べてメモっておく
作成日:2023-01-04, 更新日:2023-07-03
私の環境
WIN+Docker+Ubuntuでlaravelを使うための作業メモ
基本
▼好きなトコで記載すると対象のエラーページに飛ばしてくれる
abort(404);
デフォルトのまま「abort()」で使える値が「401, 403, 404, 419, 429, 500, 503」らしい
「abort(400);」でエラー
▼「400(Bad Request)」にしようとして「abort(400);」でエラー
mfony\Component\HttpKernel\Exception\HttpException
調べると「resources/views/errors/400.blade.php」が必要らしい
対応
- エラーページをマルっと用意
- 必要なページを作成
エラーページをマルっと用意
$ ./vendor/bin/sail php artisan vendor:publish --tag=laravel-errors
→「resources/views/errors/xxx.blade.php」が色々と作られる
必要なページを作成
今回は「400」が欲しいので「400.blade.php」をつくる
▼「401.blade.php」を複製して「400.blade.php」を作り、中身を修正
@extends('errors::minimal') @section('title', __('Bad Request')) @section('code', '400') @section('message', __('Bad Request'))
※「@extends('errors::minimal')」を改修すればレイアウトも変更できるっぽい
レイアウト変更
- 「@extends('errors::minimal')」を「@extends('errors::layout')」にする
- 「resources/views/errors/layout.blade.php」を好きにする
メッセージを増やしたい
「@section()」と「@yield()」を増やす
▼「400.blade.php」
@extends('errors::layout') @section('title', __('Bad Request')) @section('code', '400') @section('message', __('Bad Request')) @section('summary', __('ほげほげ'))
▼「layout.blade.php」の好きな場所に追加
@yield('summary')