W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗(yàn)值獎勵
那么,如果傳入的請求參數(shù)未通過給定的驗(yàn)證規(guī)則呢?正如前面所提到的,Laravel 會自動將用戶重定向到之前的位置。另外,所有的驗(yàn)證錯(cuò)誤信息會自動存儲到 閃存 session 中。
再次提示,我們沒有必要在 GET
路由中顯式地綁定錯(cuò)誤信息到視圖中。這是因?yàn)?Laravel 會檢查 session 數(shù)據(jù)中的錯(cuò)誤,如果可用的話,將會自動將其綁定到視圖中去。其中的 $errors
變量是 Illuminate\Support\MessageBag
的一個(gè)實(shí)例。要獲取關(guān)于該對象更多的信息, 請參閱這篇文檔 。
技巧:
$errors
由web
中間件組提供的Illuminate\View\Middleware\ShareErrorsFromSession
中間件綁定到視圖中。當(dāng)該中間件被應(yīng)用后,$errors
變量在您的視圖中總是可用的,因此您可以假設(shè)$errors
變量總是被定義了且總是安全可用的。
所以,在如下的例子中,當(dāng)表單驗(yàn)證失敗時(shí),用戶將被重定向到控制器的 create
方法中,我們可在視圖中顯示錯(cuò)誤信息:
<!-- /resources/views/post/create.blade.php -->
<h1>Create Post</h1>
@if ($errors->any())
<div class="alert alert-danger">
<ul>
@foreach ($errors->all() as $error)
<li>{{ $error }}</li>
@endforeach
</ul>
</div>
@endif
<!-- Create Post Form -->
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: