目前我是在 lang 文件夹里,定义了 验证器 语言文件的中文版本,但其中还存在像是 :attribute 这种字段。
所以最后的错误提示就变成了:
:attribute 这种字段如何变成中文呢?
PS: 我不想针对性的自定义错误信息,这个应用有一百多个错误验证,我怕最后我会写疯掉。
3 回答
![?](http://img1.sycdn.imooc.com/5458471300017f3702200220-100-100.jpg)
元芳怎么了
TA贡献1798条经验 获得超7个赞
1、(推荐,我平常就这么用)如果你是用FormRequest的话,可以重写如下的方法:
public function attributes()
{
return [
// 类似 'username' => '用户名'
'username' => trans('label_fields.username'),
];
}
2、(我未测试过,为了回答扒文档临时看到的)如果是在controller中的validator,则可以这样为input属性名定义一个“漂亮的名字”:
$niceNames = array(
'username' => '用户名'
// 或单独将它定义,例如在lang下
// 'username' => trans('label_fields.username'),
);
$validator = Validator::make(Input::all(), $rules);
$validator->setAttributeNames($niceNames);
// ...
希望能帮到你,兄弟,如有错误请指出。
![?](http://img1.sycdn.imooc.com/533e4cf4000151f602000200-100-100.jpg)
小唯快跑啊
TA贡献1863条经验 获得超2个赞
很简单啊,validate,第一个参数验证数据,第二个参数验证规则,第三个参数自定义显示错误,第四个参数,自定义字段名称(就是你的答案)
$this->validate($request, [
'info' => 'required',
'data' => 'required',
], [],
[
'info' => '输入信息',
'data' => '数据',
]
);
![?](http://img1.sycdn.imooc.com/5c4aa098000126bb09600960-100-100.jpg)
繁星coding
TA贡献1797条经验 获得超4个赞
可以直接在validation.php
这个文件中写的.比如:
return [
'required' => ':attribute 不能为空。',
'attributes' => [
'username' => '用户名',
]
];
通过这种方式就可以将:attribute
替换成相应的中文了;
- 3 回答
- 0 关注
- 889 浏览
添加回答
举报
0/150
提交
取消