Laravel 扩展规则消息

Posted

技术标签:

【中文标题】Laravel 扩展规则消息【英文标题】:Laravel Extend Rule Message 【发布时间】:2017-07-08 06:29:43 【问题描述】:

我在 Laravel 中使用“唯一”验证规则,该规则目前在 FormRequest 中。我正在尝试自定义从此规则返回的消息,但在 Laravel 生成此消息的文档中看不到。

我意识到完全扩展验证器并创建我自己的自定义验证器是可能的,但我需要做的就是自定义“唯一”规则消息。文档中的类是here:

https://github.com/laravel/framework/blob/5.3/src/Illuminate/Validation/Rules/Unique.php

关于在内部生成此消息的位置的任何指针?作为参考,这是当前的输出:


  "message": "422 Unprocessable Entity",
  "errors": 
    "user_id": [
      "The user id has already been taken."
    ]
  ,
  "status_code": 422

【问题讨论】:

【参考方案1】:

在你的 Request 类中写下这个:

public function rules()

    return [ 
        'name' => 'unique'
    ]


public function messages()
 
     return[
         'name.unique' => 'Write your own message ... '
     ]


【讨论】:

【参考方案2】:

。使用 messages() 函数覆盖它们

请求文件中的函数消息

    'email.required' => 'Er, you forgot your email address!',
    'email.unique' => 'Email already taken m8',

【讨论】:

以上是关于Laravel 扩展规则消息的主要内容,如果未能解决你的问题,请参考以下文章