亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 開發 > PHP > 正文

Laravel 5框架學習之子視圖和表單復用

2024-05-04 23:34:05
字體:
來源:轉載
供稿:網友

本文給大家主要介紹的是Laravel5框架中的子視圖以及表單復用的用法,十分的細致全面,對于大家熟練掌握Laravel5框架非常有幫助,有需要的小伙伴可以參考下

我們需要處理編輯文章的問題。當然我們可以手工添加新的路由,就像這樣:

復制代碼代碼如下:

Route::get('/articles/{id}/edit','ArticleController@edit');

讓我們在命令行下使用 artisan 的 route:list 來查看我們當前的路由:

復制代碼代碼如下:

php artisan route:list

在符合 RESTful 的情況下,可能直接使用 laravel 的 resource 路由是一種好的選擇,然我們將所有的路由都去掉,只添加唯一的一個:

復制代碼代碼如下:

Route::resource('articles', 'ArticlesController');

再次使用 php artisan route:list 查看路由,哇,一堆的符合我們期望的路由產生了。每一項都仔細查看一下。

現在在控制器中添加方法:

 

 
  1. public function edit($id) { 
  2. $article = Article::findOrFail($id); 
  3.  
  4. return view('articles.edit', compact('article')); 

現在創建視圖

 

 
  1. @extends('layout'
  2.  
  3. @section('content'
  4. <h1>Edit: {!! $article->title !!} </h1> 
  5.  
  6. <hr/> 
  7.  
  8. ... 

好吧,我承認這些代碼都是從 create.blade.php 中拷貝出來的,修改了一下,問題是我們需要重復嗎?后面我們會處理這個問題,現在來看一下表單的提交問題。在路由中 php artisan route:list ,再看一遍,修改使用了 PATCH 方法,我們來修改視圖:

復制代碼代碼如下:

{!! Form::open(['method' => 'PATCH', 'url' => 'articles/' . $article->id]) !!}

在瀏覽器中訪問 /articles/1/edit ,查看一下源代碼,發現laravel自動生成了 _method=PATCH 的隱藏字段。

一問題是,我們編輯文章,但是文章的信息并沒有顯示出來,我們修改一下視圖:

復制代碼代碼如下:

{!! Form::model($article, ['method' => 'PATCH', 'url' => 'articles/' . $article->id]) !!}

OK,everything's ok,除了 published_on 字段仍然設置為當前日期,后面我們來處理。

現在在控制器中添加方法:

 

 
  1. public function update($id, /Illuminate/Http/Request $request) { 
  2. $article = Article::findOrFail($id); 
  3. $article->update($request->all()); 
  4.  
  5. return redirect('articles'); 

我們在修改的過程中也需要驗證,讓我們復用我們的 Request 類,將 CreateArticleRequest 更名為更通用的 ArticleRequest,別忘了修改 store 方法中的參數。

 

 
  1. public function update($id, Requests/ArticleRequest $request) { 
  2. $article = Article::findOrFail($id); 
  3. $article->update($request->all()); 
  4.  
  5. return redirect('articles'); 

現在剩下的問題是我們的新建和編輯使用了大部分相同的代碼,比如顯示錯誤,但他們存在兩份,我們來修改這個問題。

我們直接在 views/articles 下面新建文件 list.blade.php,并把錯誤處理代碼從 create.blade.php 中拷貝出來:

 

 
  1. @if ($errors->any()) 
  2. <ul class="alert alert-danger"
  3. @foreach($errors->all() as $error
  4. <li>{{ $error }}</li> 
  5. @endforeach 
  6. </ul> 
  7. @endif 

在 create.blade.php 只需用下面語句替換錯誤處理代碼即可:

復制代碼代碼如下:

@include('articles.list')

讓我們再來處理表單代碼,表單代碼中除了 form 不大一樣和提交按鈕有區別,其他都差不多。我們創建一個視圖 articles/form_partial.blade.php,將代碼拷貝出來

 

 
  1. <div class="form-group"
  2. {!! Form::label('title''Title:') !!} 
  3. {!! Form::text('title', null, ['class' => 'form-control']) !!} 
  4. </div> 
  5.  
  6. <div class="form-group"
  7. {!! Form::label('body''Body:') !!} 
  8. {!! Form::textarea('body', null, ['class' => 'form-control']) !!} 
  9. </div> 
  10.  
  11. <div class="form-group"
  12. {!! Form::label('published_at''Publish On:') !!} 
  13. {!! Form::input('date''published_at'date('Y-m-d'), ['class' => 'form-control']) !!} 
  14. </div> 
  15.  
  16. <div class="form-group"
  17. {{--這里要設置變量,依據是編輯還是修改來改變,當然也可以不放置在partial中--}} 
  18. {!! Form::submit($submitButtonText, ['class' => 'btn btn-primary form-control']) !!} 
  19. </div> 

修改 create.blade.php

 

 
  1. @extends('layout'
  2.  
  3. @section('content'
  4. <h1>Write a New Article</h1> 
  5.  
  6. <hr/> 
  7.  
  8. @include('articles.list'
  9.  
  10. {{--使用我們添加的 illuminate/html 開源庫--}} 
  11. {!! Form::open(['url' => 'articles']) !!} 
  12. @include('articles.form_partial', ['submitButtonText' => 'Add Article']) 
  13. {!! Form::close() !!} 
  14.  
  15. @stop 

修改 edit.blade.php

 

 
  1. @extends('layout'
  2.  
  3. @section('content'
  4. <h1>Edit: {!! $article->title !!} </h1> 
  5.  
  6. <hr/> 
  7.  
  8. @include('articles.list'
  9. {{--使用我們添加的 illuminate/html 開源庫--}} 
  10. {!! Form::model($article, ['method' => 'PATCH''url' => 'articles/' . $article->id]) !!} 
  11. @include('articles.form_partial', ['submitButtonText' => 'Update Article']) 
  12.  
  13. {!! Form::close() !!} 
  14.  
  15. @stop 

以上就是本文給大家介紹的全部內容了,希望能夠對大家熟練掌握Laravel5框架有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
精品久久久免费| 久久久成人的性感天堂| 热99精品只有里视频精品| 欧美激情奇米色| 亚洲va码欧洲m码| 日韩精品在线免费观看| 狠狠干狠狠久久| 欧美自拍视频在线| 欧美日韩国产成人高清视频| 日韩精品视频在线播放| 欧美激情性做爰免费视频| 91香蕉嫩草神马影院在线观看| 亚洲成人网av| 在线视频精品一| 亚洲高清福利视频| 欧美大片免费观看在线观看网站推荐| 亚洲欧洲国产精品| 国产亚洲精品一区二555| 国产精品福利小视频| 91po在线观看91精品国产性色| 国产91精品在线播放| 日韩欧美国产高清91| 国外成人在线视频| 欧美日韩一区二区在线播放| 日本欧美在线视频| 日韩精品免费在线观看| 久久久久久久网站| 欧美激情一区二区三级高清视频| 91免费精品国偷自产在线| 91高清视频在线免费观看| 精品国产欧美一区二区三区成人| 国产精品一区二区久久久久| 久久人人爽人人爽人人片亚洲| 日韩在线免费视频观看| 九九热精品视频| 操日韩av在线电影| 精品无人区太爽高潮在线播放| 欧美日韩精品二区| 亚洲男人天堂2024| 亚洲丝袜一区在线| 久久精品电影一区二区| 国产精品激情自拍| 91爱爱小视频k| 最好看的2019年中文视频| 亚洲精品自拍视频| 久久久久久有精品国产| 黄色一区二区在线观看| 日韩精品视频观看| 国产亚洲欧美日韩精品| 日韩av片电影专区| 亚洲精品网站在线播放gif| 久久久免费高清电视剧观看| 国产99久久精品一区二区永久免费| 久久影院在线观看| 亚洲最大中文字幕| 久久综合久久88| 91国内精品久久| 2019精品视频| 日韩中文字在线| 日韩精品福利在线| 国产激情综合五月久久| 91在线中文字幕| 欧美日韩久久久久| 国产欧美一区二区| 国产精品一久久香蕉国产线看观看| 日韩成人黄色av| 国产a级全部精品| 久久久成人的性感天堂| 国产99久久久欧美黑人| 久久亚洲精品网站| 国产福利视频一区二区| 精品久久国产精品| 色综合天天狠天天透天天伊人| 欧美最猛性xxxxx(亚洲精品)| 国产精品专区一| 亚洲va久久久噜噜噜久久天堂| 色妞色视频一区二区三区四区| 国内精品久久久久影院优| 欧美亚洲伦理www| 久久精品国产视频| 精品久久久91| 成人黄色片网站| 热久久这里只有| 亚洲女人初尝黑人巨大| 亚洲自拍中文字幕| 国产亚洲精品一区二555| 欧美成人全部免费| 欧美寡妇偷汉性猛交| 色婷婷亚洲mv天堂mv在影片| 久久久天堂国产精品女人| 中文字幕久久精品| 黑人巨大精品欧美一区二区免费| 国产日韩中文在线| 成人精品视频在线| 日韩精品免费一线在线观看| 欧美日韩国产精品专区| 亚洲精品电影在线| 日韩高清电影免费观看完整版| 国产精品久久久久秋霞鲁丝| 日韩欧美在线字幕| 精品欧美aⅴ在线网站| 欧美高清在线观看| 国产婷婷97碰碰久久人人蜜臀| 欧美乱大交xxxxx| 国产成人精品在线| 久久久99免费视频| 国产一区二区三区丝袜| 亚洲国产精品久久久久秋霞不卡| 久久免费视频这里只有精品| 亚洲福利视频专区| 一区二区三区回区在观看免费视频| 亚洲视频日韩精品| 国产中文日韩欧美| 国产欧美日韩中文字幕在线| 欧美激情一二三| 日韩视频―中文字幕| 亚洲国产欧美精品| 久久久久国产精品免费网站| 成人免费淫片视频软件| 欧美性猛交xxxxx水多| 欧美日韩国产精品一区二区不卡中文| 中文字幕亚洲欧美日韩2019| 欧美日韩国产丝袜美女| 欧美激情精品久久久久久免费印度| 亚洲国产福利在线| 日韩国产高清视频在线| 久久精品91久久香蕉加勒比| 亚洲人午夜精品免费| 日本高清视频精品| 在线观看久久av| 久久综合久久美利坚合众国| 性欧美亚洲xxxx乳在线观看| 日韩av在线免播放器| 国产精品偷伦一区二区| 久久夜色精品亚洲噜噜国产mv| 九九热最新视频//这里只有精品| 国产精品 欧美在线| 亚洲欧美国产视频| 欧美黑人狂野猛交老妇| 欧美激情综合色综合啪啪五月| 国产亚洲福利一区| 日本sm极度另类视频| 国产精品久久77777| 亚洲日韩欧美视频| 亚洲成色777777在线观看影院| 精品视频在线导航| 久久91精品国产91久久久| 日本乱人伦a精品| 欧美成人精品一区二区三区| 国产日韩欧美视频| 欧美激情在线狂野欧美精品| 日韩av一区二区在线观看| 欧美视频中文在线看| 欧美在线性爱视频| 欧美性xxxxx极品娇小| 中文字幕亚洲欧美在线| 97久久久免费福利网址| 26uuu日韩精品一区二区| 97成人在线视频| 国产精品视频网址| 少妇高潮久久久久久潘金莲| 中文字幕日韩高清| 欧美一乱一性一交一视频| 国产成人avxxxxx在线看|