Php 在请求验证laravel中重命名属性项数组

Php 在请求验证laravel中重命名属性项数组,php,laravel,validation,Php,Laravel,Validation,我正在表单请求中使用laravel验证,这次我需要验证数据数组,如下所示: public function rules() { $rules = [ 'products.*.quantity' => 'required|integer', 'products.*.dimension' => 'required|min:5|max:16', 'products.*.description' => 'required|min:5',

我正在表单请求中使用laravel验证,这次我需要验证数据数组,如下所示:

public function rules()
{
    $rules = [
       'products.*.quantity' => 'required|integer',
       'products.*.dimension' => 'required|min:5|max:16',
       'products.*.description' => 'required|min:5',
    ];

    return $rules;
}
如果products是我拥有每个项目的数组,那么它可以工作,但是它会给我一个或多或少类似这样的消息:
products.1.quantity字段是必需的。
我需要更改属性的名称,我知道可以在messages方法中更改名称,为
products.*提供一个新值。数量
例如产品。*。quantity=>“quantity”,但是我还想指定失败项的键,最后有一条如下消息:

public function rules()
{
    $rules = [
       'products.*.quantity' => 'required|integer',
       'products.*.dimension' => 'required|min:5|max:16',
       'products.*.description' => 'required|min:5',
    ];

    return $rules;
}
项目1字段中的数量为必填项。

那么有可能实现这一点吗?

搜索此文件
resources/lang/xx/validation.php
,并使用自定义消息修改自定义条目

“自定义”=>[
'产品。*.数量'=>[
'必需'=>'您的自定义邮件',
]
]

这是否回答了您的问题?这并没有回答他发布的问题,他希望在返回的消息中包含
$index
。您的解决方案忽略了这一点,Don't Panic提供的链接似乎是一个更好的解决方案,因为它确实处理了这个问题。