我正在使用适用于Laravel的dimsav translatable和proengsoft / laravel-jsvalidation包创建一个CRUD。 表单字段名称必须遵循这样的数组结构...
<div class="form-group">
{!! Form::label("es[title]", trans("messages.title"), ["class" => "control-label"]) !!}
{!! Form::text("es[title]", getFormInput($entry, "title", $locale), ["class" => "form-control", "id" => "es[title]"]) !!}
</div>
能够在控制器上轻松使用质量对准。
正在使用CreateRequest验证创建表单,如下所示......
{
/**
* Get the validation rules that apply to the request.
*
* @return array
*/
public function rules()
{
return [
'es.title' => 'required|max:255',
];
}
}
我不知道如何在resources / lang / validation.php文件中使用更友好的文本更改属性占位符。我尝试了以下选项...
'attributes' => [
'title' => 'título',
//'es.title' => 'título',
//'es[title]' => 'título',
],
......但他们中的任何一个都在工作。表单正在验证确定命名字段&#39; es.title&#39;但是显示的错误消息并没有正确替换字段名称,即使我也将属性数组键命名为“es.title&#39;”。有什么想法吗?
答案 0 :(得分:1)
内部App/Http/Requests/YourRequest
public function messages()
{
return [
'es.title.required' => 'You forgot título!',
];
}
您可以为不同的验证规则设置不同的消息(必需,最大等)
用于设置属性的自定义名称
public function attributes()
{
return [
'es.title' => 'título'
];
}
<强> EDITED 强>
要全局设置属性名称,请转到lang/en/validation
,然后您将看到属性数组。根据您的要求进行更改。
'attributes' => [
'es' => [
'title' => 'título'
]
],