在laravel中,old()方法用于將session中的信息取出來,語法為“value="{{old(‘name’)}}"”;當表單提交失敗后laravel會將用戶輸入的數(shù)據(jù)閃存到一次性的session里,old就可以取出其中的閃存數(shù)據(jù)。
本文操作環(huán)境:Windows10系統(tǒng)、Laravel6版、Dell G3電腦。
laravel中old方法怎么用
由于錯誤信息會閃存到session中,所以,old函數(shù)是將session中的信息取出來
value="{{old('name')}}"
當用戶提交表單失敗后laravel會自動把用戶的輸入數(shù)據(jù)閃存到一次性的session里面(這個數(shù)據(jù)一刷新就會丟失,故稱為一次性數(shù)據(jù))。那么old(‘name’)就可以取出session中的閃存數(shù)據(jù),從而避讓讓用戶重新輸入。
使用old()可以將上次提交的數(shù)據(jù)從一次性session里取出來,掛在DOM元素上,從而避免用戶重新輸入。
示例如下:
傳統(tǒng)提交表單 頁面會刷新,輸入框里的內(nèi)容會丟失掉。laravel
更好的用戶體驗 解決辦法withInput() + old()session
laravel 會自動把用戶輸入的數(shù)據(jù)存到一次性的session里。函數(shù)
使用old()能夠?qū)⑸洗翁峤坏臄?shù)據(jù)從一次性session里取出來,掛在DOM元素上,從而避免用戶從新輸入。input
使用withInput(),配合with方法,能夠?qū)⑾胍祷氐膮?shù)寫入session中。blade模板即可以從session中取出值,來作一些邏輯判斷。it
return?redirect()->?back()->withInput()->with(['error'=>'注冊失敗,短信驗證碼不正確','page'=>'phone']);
blade模板old()賦值函數(shù)寫法io
<input>
【相關(guān)推薦:laravel視頻教程】