是否有一种简单的方法可以用Laravel的验证消息替换输入名称,例如标签?
现在的消息就像:
usrRoleId字段是必需的。
我知道有两种选择:
将输入名称更改为更易读。
在验证请求中写入EACH消息,如下所示:用户角色是必需的。
我正在寻找更自动的东西 - 比如定义一次字符串并在每次使用这样的字段名称时使用它。
答案 0 :(得分:1)
是的,你可以而且它实际上很容易。您可以在resources/lang/en/validation.php
密钥下的attributes
文件中为指定属性指定自定义名称:
'attributes' => [
'usrRoleId' => 'User Role'
],
现在验证者邮件中usrRoleId
:attribute
的任何地方都会被User Role
替换。所以而不是:
usrRoleId字段是必需的。
你会得到好的:
用户角色字段是必需的。
如果您希望整个自定义消息不仅仅是需要usrRoleId
的自定义属性名称,那么您可以在同一文件中为该用户添加custom
项的条目。所以加上这个:
'custom' => [
'usrRoleId' => [
'required' => 'User Role is required',
],
],
将使用该自定义消息,但没有:attribute
占位符。如果您想使用占位符,可以保留上面描述的attributes
映射:
'custom' => [
'usrRoleId' => [
'required' => ':attribute is required',
],
],
您仍然可以使用映射的属性名称获取自定义消息:
需要用户角色。