錯誤訊息
自定義錯誤訊息
/resources/lang/[lang]/validation.php
檔案包含驗證器要使用的錯誤訊息。你可以根據需要進行編輯。
它們中的大多數都有佔位符,在生成錯誤訊息時會自動替換它們。
例如,在'required' => 'The :attribute field is required.'
中,:attribute
佔位符將替換為欄位名稱(或者,你也可以在同一檔案中自定義 attributes
陣列中每個欄位的顯示值)。
例
訊息配置:
'required' => 'Please inform your :attribute.',
//...
'attributes => [
'email' => 'E-Mail address'
]
規則:
`email' => `required`
結果錯誤訊息:
“請通知你的電子郵件地址。”
自定義 Request 類中的錯誤訊息
Request 類可以訪問 messages()
方法,該方法應該返回一個陣列,這可以用來覆蓋訊息而不必進入 lang 檔案。例如,如果我們有自定義 file_exists
驗證,你可以使用以下訊息。
class SampleRequest extends Request {
/**
* Get the validation rules that apply to the request.
*
* @return array
*/
public function rules()
{
return [
'image' => 'required|file_exists'
];
}
/**
* Determine if the user is authorized to make this request.
*
* @return bool
*/
public function authorize()
{
return true;
}
public function messages()
{
return [
'image.file_exists' => 'That file no longer exists or is invalid'
];
}
}
顯示錯誤訊息
驗證錯誤會閃現到會話中,並且也可以在 $errors
變數中使用,該變數會自動共享給所有檢視。
在 Blade 檢視中顯示錯誤的示例:
@if (count($errors) > 0)
<div class="alert alert-danger">
<ul>
@foreach ($errors->all() as $error)
<li>{{ $error }}</li>
@endforeach
</ul>
</div>
@endif