Laravel的验证条件如何?

时间:2016-06-15 18:51:30

标签: laravel

对于这个愚蠢的问题,我很抱歉,我知道它在文档中是什么。但是文档通常不了解如何实现它。

假设有一条规则:

public function rules()
    {
        return [
            'title' => 'required|max:15',
            'author' => 'required|max:15',
        ];
    }

并且它通常以“编辑”形式使用,比如用户在编辑产品时,超出字符数限制15,然后留下“您已超出字符数限制”的消息。

PS请举一个简单的例子,他会毫不犹豫地处理它。

2 个答案:

答案 0 :(得分:0)

您正在寻找this link in the docs.

正如文档所说,定义映射到规则的消息数组,并将它们传递给验证器。像这样

$rules = [ 'title' => 'max:15' ]    
$msgs = [ 'max' => 'Exceeded char limit or whatever!' ]
Validator::make($input, $rules, $msgs);

答案 1 :(得分:0)

看起来您正在使用FormRequest进行验证。在这种情况下,您可以向请求类中添加另一个名为messages()的方法,并从那里返回自定义消息,以下是示例:

public function messages()
{
    return [
        'required'  =>  'The attribute: field cannot be left blank',
    ];

以上示例将使用我们针对所有the attribute: field is required.规则的自定义消息替换标准错误消息required,其中attribute:表示正在验证的字段的名称。

但是如果你想在每个领域进一步定制它。您可以使用这样的点(。)表示法:

public function messages()
{
    return [
        'title.required'  =>  'The Title must be filled',
    ];