by Devin Yang

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

我們通常開發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

D-Laravel v1.5.0新版本了。

一、變更fpm的image產生方式,優化dockerfiles/fpm/php7.x/Dockerfiles,更容易設定及調整擴充套件。 二、調整docker-compose-build.yml,並在D-Laravel的Project目錄下, 可透過./console build快速建立自己的image囉。 還有更多的變更....

laravel,oauth2

我最常用的Laravel passport指令

Laravel提供了相當多好用的Package,像Passport就是其中之一,當網站需要自架OAuth2驗證主機時,真的是省時省力。本站為例,因為採前後台分離機制(有兩個不同的Laravel專案),我都透過前台的WEB進行驗證。基本上,我還有很多其他不同的專案,也都靠Laravel提供的OAuth2就搞定跨域驗證。

laravel

升級Laravel 8.8,我把文章及筆記整合在一起了

Laravel 8大改版,我的網站也跟著改版,我網站上的「筆記」及「文章」本來是分開兩個區塊的。 這次把他整合在一起了,反正也沒什麼文章,合起來內容看起來比較多。:p