【问题标题】:Laravel validation - More readable messagesLaravel 验证 - 更具可读性的消息
【发布时间】:2016-03-12 13:38:51
【问题描述】:

有没有一种简单的方法可以将 Laravel 验证消息中的输入名称替换为例如标签?

现在的消息是这样的:

usrRoleId 字段是必需的。

我知道有两种选择:

  1. 将输入名称更改为更具可读性。

  2. 在验证请求中编写每个消息,如下所示:需要用户角色。

我正在寻找更自动化的东西——比如定义一个字符串并在每次使用此类字段名称时使用它。

【问题讨论】:

    标签: php validation laravel


    【解决方案1】:

    是的,您可以,而且实际上非常简单。您可以在 resources/lang/en/validation.php 文件中的 attributes 键下为给定属性指定自定义名称:

    'attributes' => [
        'usrRoleId' => 'User Role'
    ],
    

    现在任何你在验证器消息中有:attributeusrRoleId 都将替换为User Role。所以而不是:

    usrRoleId 字段是必需的。

    你会得到好的:

    用户角色字段是必需的。


    如果您希望在需要 usrRoleId 时拥有完整的自定义消息,而不仅仅是自定义属性名称,那么您可以在同一文件中为该用户添加一个条目 custom 键。所以添加这个:

    'custom' => [
        'usrRoleId' => [
            'required' => 'User Role is required',
        ],
    ],
    

    将使用该自定义消息,但没有 :attribute 占位符。如果你想使用占位符你可以留下我上面描述的attributes映射:

    'custom' => [
        'usrRoleId' => [
            'required' => ':attribute is required',
        ],
    ],
    

    您仍然会收到自定义消息,但带有映射的属性名称:

    需要用户角色。

    【讨论】:

    • 非常感谢 :) 这正是我想要的 :)
    猜你喜欢
    • 1970-01-01
    • 2018-12-17
    • 1970-01-01
    • 1970-01-01
    • 2018-01-31
    • 2017-12-27
    • 2021-08-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多