在测试时,系统总是返回我需要的自定义消息。例如,我希望验证器检查密码是否匹配。但错误消息显示“需要密码验证”而不是“密码不匹配”。
这是我的验证功能和规则。
protected function getRegisterValidator()
{
$message = array(
'same' => ':attribute ve :other tekrarları birbirini tutmalı.',
'between' => ':attribute en az :min en fazla :max karakterden oluşabilir.',
'min' => ':attribute en az :min karakter içermelidir.',
'max' => ':attribute maksimum :max karakterden oluşabilir.',
'alpha_num' => 'girilen :attribute alfanumerik olmalıdır.',
'unique' => 'Bu :attribute ile zaten önceden kayıt olunmuş.',
'email' => ':attribute geçerli bir mail adresi değil.',
'captcha' => 'Doğrulama karakterlerini yanlış girdiniz.',
'required' => ':attribute alanı boş olamaz.'
);
return Validator::make(Input::all(),array(
'Kurum' => 'required',
'Ad' => 'required',
'Soyad' => 'required',
'Görev' => 'required',
'Email' => 'required|email|unique:user',
'Email Tekrarı'=> 'required|same:Email',
'Şifre' => 'required|between:8,12',
'Şifre Tekrarı' => 'required|same:Şifre',
'Doğrulama' => 'captcha|required'
), $message);
}
提前致谢。
答案 0 :(得分:1)
试试这个
$message = [
'şifre.required' => 'Şifre alanı boş bırakılamaz',
'şifre.same' => 'Şifre alanları eşleşmiyor',
];
“şifre”是输入名称。
答案 1 :(得分:0)
我找到了解决方案。字段名称之间的空格如“ŞifreTekrarı”或“EmailTekrarı”导致错误和laravel验证器无法比较“Şifre”和“ŞifreTekrarı”字段之间的值。
解决方案是在HTML文件(或刀片)中设置不带空格的字段名称,并且不涉及任何土耳其字符。
protected function getRegisterValidator()
{
$message = array(
'same' => ':attribute ve :other tekrarları birbirini tutmalı.',
'between' => ':attribute en az :min en fazla :max karakterden oluşabilir.',
'min' => ':attribute en az :min karakter içermelidir.',
'max' => ':attribute maksimum :max karakterden oluşabilir.',
'alpha_num' => 'girilen :attribute alfanumerik olmalıdır.',
'unique' => 'Bu :attribute ile zaten önceden kayıt olunmuş.',
'email' => ':attribute geçerli bir mail adresi değil.',
'captcha' => 'Doğrulama karakterlerini yanlış girdiniz.',
'required' => ':attribute alanı boş olamaz.'
);
return Validator::make(Input::all(),array(
'Kurum' => 'required|min:3|max:60',
'Ad' => 'required|min:3|max:30',
'Soyad' => 'required|min:3|max:30',
'Görev' => 'required|min:1|max:60',
'Email' => 'required|email|unique:user|same:Email_Tekrarı',
'Email_Tekrarı'=> 'required',
'Şifre' => 'required|between:8,12|same:Şifre_Tekrarı',
'Şifre_Tekrarı' => 'required',
'Doğrulama' => 'captcha|required'
), $message);
}
重要提示:
如果您显示的错误消息包含“Email_Tekrar”这些字段名称(我的意思是包含了_字符),则错误消息会忽略“_”字符并显示错误消息,如“需要电子邮件Tekrarı字段”。< / p>
顺利运作。
感谢您的耐心等待。