by Devin Yang

建立於: 8年前 ( 更新: 8年前 )

我們通常開發Laravel時,有時會進行欄位驗證,但使用Validator預設的訊息是英文的。
但當然想要有更精確顯示中文訊息顯示,
本文介紹,我如何使用Laravel的Validator自訂中文的訊息。

一、首先,在Controller上先匯入Validator

二、Validator可以接受三個欄位,第三個就是自訂的錯誤訊息啦...
詳見,官網Custom Error Messages部份:

https://laravel.com/docs/5.5/validation#customizing-the-error-messages

$validator = Validator::make($input, $rules, $messages);可以收三個參數:
第一個輸入:   表單傳進來的值$request->all()。
第二個規則:   欄位的規則,例如這裡,我username是required必填並且需為alpha。
第三個訊息:   本文重點,自訂的錯誤訊息。

下圖抓我程式中的原始碼:

所以$validator->fails()驗證失敗時,即可導回表單頁面/meeting。
如果沒有驗證失敗,就會呼叫Api,傳入使用者填寫的username名稱,取得進入的網址。


三、在表單blade頁面的程式碼中。
$errors->count()查看是否有錯誤,
使用foreach循環不同的錯誤,
​​​​​​​因為可能有多個欄位多種錯誤,{{$error}}則是錯誤的原因。

測試

四、壓了「進入」鈕未填寫名稱時,即可出現請填寫名稱的中文訊息囉。

五、如果只填入1234,壓「進入」鈕,就會出現請勿填寫數字的訊息囉。

Demo

Tags: laravel

Devin Yang

文章內容無法一一說明,如果您有什麼不了解處,歡迎提問哦:)

No Comment

Post your comment

需要登入才可留言!

類似的文章


dlaravel

使用docker in docker建立D-Laravel測試環境。

D-Laravel是一個極易使用並且極有彈性的Laravel開發環境,只要您是Mac的使用者,就算不懂Docker也可以透過他來建立Laravel的專案,進行開發,由於最近加入.env的功能新功能時,急者push,卻沒有完整測試,搞出了一堆新的Bug,所以,這次新增了一個新的dlaravel_test,bash的測試工具,透過doceker in docker的方式來跑測試。確保D-Laravel的每一次釋出都能是一個穩定的版本。

dlaravel

如何在host直接執行容器內,不同Project的php artisan.

本篇為D-Laravel的運用教學,如何在主機端直接執行container內的php artisan. 自訂別名後,就能直接在host端的project資料夾內,直接執行contianer內的php artisan了。 alias a="../../artisan.sh"

web-hosting,laravel

智邦安裝Laravel 5.4經驗分享

在智邦的Linux 7.0平台安裝Laravel 5.4,成功執行案例分享, 因為原本是舊版的PHP,第一次可以免費轉移至新版本, 所以請他們開了一個測試的php 7.0環境給我們測試,小調整後, Laravel的環境確實可在智邦的代管主機上執行。 本文介紹,我如何在智邦成功的執行Laravel的網站過程。