Laravel request请求表单验证

  • Post author:
  • Post category:其他


创建请求文件

php artisan make:request

requestName


requestName是请求的名字,会保存在app/Http/Requests

<?php

namespace App\Http\Requests;

use Illuminate\Foundation\Http\FormRequest;
use Illuminate\Http\Exceptions\HttpResponseException;
use Illuminate\Contracts\Validation\Validator;

class recruitForm extends FormRequest
{
    /**
     * 
     *
     * @return bool
     */
    public function authorize()
    {
        return true; //这里一定要改成true默认是false 不然会报403错误
    }

    /**
     * 验证字段
     *
     * @return array
     */
    public function rules()
    {
        return [
            'job' => 'required | max:64',
            'city' => 'required | max:64',
            'experience' => 'required | max:32',
            'qualification' => 'required | max:32',
            'salary' => 'required | max:32',
        ];
    }

   /**
     * 获取已定义验证规则的错误消息。
     *
     * @return array
     */
    public function messages()
    {
        return [
            'job.required' => '职位必填',
            'job.max' => '职位最大字符不得超过64字符',
            'city.required' => '工作地点必填',
            'city.max' => '工作地点最大字符不得超过64字符',
            'experience.required' => '工作经验必填',
            'experience.max' => '工作经验最大字符不得超过64字符',
            'qualification.required' => '学历必填',
            'qualification.max' => '学历最大字符不得超过64字符',
            'salary.required' => '薪资必填',
            'salary.max' => '薪资最大字符不得超过32字符',
        ];
    }

//    ajax返回
    public function failedValidation(Validator $validator)
    {
        throw (new HttpResponseException(response()->json([
            'code' => 500,
            'msg' => $validator->errors()->first(),
        ], 200)));
    }
}



版权声明:本文为csdn876280441原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。