Laravel表单请求正则表达式规则的自定义错误消息

问题描述 投票:0回答:1

我正在尝试在Form Request中为我的正则表达式显示自定义验证错误消息,到目前为止我还没有成功。

这是我的表单请求逻辑,正则表达式规则只接受字母和数字。

<?php

namespace App\Http\Requests\discounts;

use Illuminate\Foundation\Http\FormRequest;

class CheckoutCode extends FormRequest
{
    /**
     * Determine if the user is authorized to make this request.
     *
     * @return bool
     */
    public function authorize()
    {
        return true;
    }

    /**
     * Get the validation rules that apply to the request.
     *
     * @return array
     */
    public function rules()
    {
        return [
            'code' => 'required|string|min:7|max:7|regex:/([A-Za-z0-9 ])+/',
        ];
    }


    public function messages()
    {
        return [
            'code.regex' => 'Estas jodido'
        ];
    }


}
php laravel
1个回答
0
投票

您可以使用现有的Laravel验证规则来实现这一目标:Alpha num。从文档:

alpha_num

验证字段必须是完全字母数字字符。

所以你的验证就是这样:

// ...

public function rules()
{
    return [
        'code' => 'required|string|min:7|max:7|alpha_num',
    ];
}

// ...
© www.soinside.com 2019 - 2024. All rights reserved.