質問: Laravelでデータの入力を行うformと編集するformを作っていますが、同じテーブルを扱うので自ずとformのinputの内容が同じになります。なのでformのbladeテンプレート作って入力でも編集でも使える様にしたいです。 しかし、それぞれのパターンで微妙に違いがあるのでそこをどう一つのbladeテンプレート補えばいいのか模索しております。createの際は初期にinputには何もvalueはありませんが、editの際は初期に編集するデータがinputのvalueに入ってます。また、createとeditでformの接続先である、actionの値が違います。そこの違いを考慮して例として以下の様なformのbladeテンプレートを作りました。 ``` @csrf ``` 上記の$actionはcontorollerから渡された値です。これはこれで十分だとおもいます。 問題はinputのvalueです。create、edit共通でにvalidationで引っかかって修正することがあるのでまずold関数で古い入力した値がないか確認します。あれば、それを表示します。なかった際は編集時で編集前のデータがあるかもしれないのでisset関数でcontorollerから送られたコンテンツのデータがないか確認し、あればセットします。それもなければcreate時と判断して何もセットしません。そんな感じで上記のif文を書きましたが正直長すぎます。input数が増えるたびにあんなif文を書くのはしんどいです。 そこで質問なのですが、この様なパターンってよくあると思うので、なにか方法みたいのが確立されていると思うのですが、調べても出てきません。createとeditで同じformのbladeテンプレートを使い回すスマートな方法があれば教えてください。
回答: 質問を読む限り、 ``` old('name', $content['name']); ``` で十分な気がする