old関数を使用することでセッションにフラッシュデーターとして保存されている直前の入力値を取得できる。
通常、createファイルのビューにはコントローラーからの変数は渡されていない為、ファイルを共通化して変数を渡してしまうとエラーになってしまいます。
そこで共通化するためにNull合体演算子(??)を使用します。
null合体演算子は、式1 ?? 式2という形式で記述し、以下の結果となります。
- 式1がnullでない場合は、式1が結果となる
- 式1がnullである場合は、式2が結果となる
例:共通化したファイル
@csrf
<div class="form">
<label>タイトル</label>
<input type="text" name="title" class="form-control" required value="{{ $article->title ?? old('title') }}">
<div class="form-group">
<label></label>
<textarea name="body" required class="form-control" rows="16" placeholder="本文">{{ $article->body ?? old('body') }}</textarea>
</div>