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

需要登入才可留言!

類似的文章


laravel教學,blade

在我的Laravel的blade上打標籤

使用Laravel的Blade Templates相當好用,用久了還滿習慣的,但有一點就是當建立了很多的blade時,搞的自己似乎不太好找,在這裡提供了我最近的原創作法,如果雷同純屬巧合了。

laravel,blade

Laravel 5.5 make:model的-a參數及Blade套版chunk功能介紹

不了解什麼是make:model -a參數嗎,這個影片將簡單介紹,實際操作過程, 並使用Blade套版中的chunk功能結尾。

laravel,dotenv,seo

我如何依子域名動態載入Laravel不同的dotenv檔

開始前先來抱怨一下,本來我的網站可以依使用者的瀏覽器自動顯示不同的語系的。這有何不可,但Google的SEO似乎不喜歡這麼搞,他建議每種語言使用不同的網址,不要用cookie或瀏覽器設定來調整網頁內容,好吧那我只能乖乖就範了。他的建議作法,第一種方案:依國家區分,像是example.tw或example.de這真的天方夜譚怎麼可能,要嘛收購被註冊的域名,要不然取個全球沒人會取的怪域名還比較有機會。第二種方案:用子域名區分,這正式我準備要做的,等等來說明在Laravel中怎麼弄。第三種方案:example.com/tw/ 之類的,Apple好像就這麼弄的。第四種方案:site.com?loc=tw之類,不建議使用,確實我也覺的這個不是一個好主意。