【问题标题】:Override validation messages from package in laravel 5在 laravel 5 中覆盖来自包的验证消息
【发布时间】:2017-10-12 23:20:45
【问题描述】:

我在自定义包中有这个输入:

<input name="price" type="text">

请求类有如下规则:

public function rules()
{
    return [
        'price' => ['required']
    ];
}

当价格输入规则失败时,显示的信息是:

价格字段为必填项

相反,我想显示:

需要超酷的价格

编辑resources/lang/en/validation.php 不是一个选项,因为必须从包本身设置语言。您对如何实现这一目标有任何想法吗?

编辑:遵循how overriding package language files 上的文档无法使用以下结构:

// resources/lang/packages/en/my-package/validation.php

return [
    'attributes' => [
        'price' => 'super cool price'
    ],
    'custom' => [
        'price' => [
            'required' => 'super cool price is required'
        ],
    ],
];

【问题讨论】:

    标签: php laravel laravel-5


    【解决方案1】:

    一个不错的选择是覆盖请求类中的messages() 函数:

    public function messages()
    {
        return [
            'price.required' => 'super cool price is required'
        ];
    }
    
    public function rules()
    {
        return [
            'price' => ['required']
        ];
    }
    

    【讨论】:

      猜你喜欢
      • 2018-01-31
      • 2014-08-01
      • 1970-01-01
      • 2014-03-21
      • 1970-01-01
      • 2020-01-17
      • 2018-01-28
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多