ホームページ >バックエンド開発 >PHPチュートリアル >Laravel 5 フレームワーク学習サブビューとフォーム再利用、laravel Framework_PHP チュートリアル
記事の編集の問題に対処する必要があります。もちろん、次のように新しいルートを手動で追加することもできます:
コードをコピーします コードは次のとおりです:
Route::get('/articles/{id}/edit', 'ArticleController@edit');
コマンドラインでArtisanのroute:listを使用して、現在のルートを表示しましょう:
コードをコピーします コードは次のとおりです:
php職人ルート:リスト
RESTful 準拠の場合は、laravel のリソース ルートを直接使用するのが良い選択かもしれません。ただし、すべてのルートを削除し、次のルートのみを追加します。
コードをコピーします コードは次のとおりです:
Route::resource('articles', 'ArticlesController');
次にコントローラーにメソッドを追加します:
リーリー
今すぐビューを作成リーリー
さて、これらのコードはすべて create.blade.php からコピーされ、少し変更されたものであることは認めますが、問題はそれらを繰り返す必要があるかどうかです。この問題については後で扱います。ここではフォーム送信の問題を見てみましょう。ルート内で、php 職人のルート:リストをもう一度見てください。変更には PATCH メソッドが使用されています。ビューを変更しましょう:
コードをコピーします コードは次のとおりです:
{!! Form::open(['method' => 'PATCH', 'url' => 'articles/' . $article->id]) !!}
最初の問題は、記事を編集しても、記事の情報が表示されないことです。ビューを変更しましょう。
コードをコピーします コードは次のとおりです:
{!! Form::model($article, ['method' => 'PATCH', 'url' => 'articles/' . $article->id]) !!}
OK、published_on フィールドがまだ現在の日付に設定されている点を除いて、すべて問題ありません。これについては後で扱います。
次にコントローラーにメソッドを追加します:
リーリー変更プロセス中にも検証する必要があります。Request クラスを再利用し、CreateArticleRequest の名前をより一般的な ArticleRequest に変更します。ストア メソッドのパラメーターを変更することを忘れないでください。
リーリー現在残っている問題は、新しいコードと編集コードがエラーの表示など、ほとんど同じコードを使用していることですが、そのコピーが 2 つあるため、この問題を修正しましょう。
view/articles の直下に新しいファイル list.blade.php を作成し、create.blade.php からエラー処理コードをコピーします。 リーリー
create.blade.php で、エラー処理コードを次のステートメントに置き換えるだけです:コードをコピーします
コードは次のとおりです:
@include('articles.list')
もう一度フォームコードを扱いましょう。フォームコードはフォームと送信ボタンを除いてほぼ同じです。ビュー記事/form_partial.blade.php を作成し、コードをコピーします
リーリー
リーリー
edit.blade.phpを変更するリーリー
以上がこの記事で紹介した内容であり、Laravel5フレームワークをマスターするのに役立つと幸いです。 http://www.bkjia.com/PHPjc/981359.html