Maison > cadre php > Laravel > Introduction à la gestion des erreurs de remplacement dans FormRequest dans Laravel (exemple de code)

Introduction à la gestion des erreurs de remplacement dans FormRequest dans Laravel (exemple de code)

不言
Libérer: 2019-01-09 10:00:25
avant
3148 Les gens l'ont consulté

Ce que cet article vous apporte est une introduction à la gestion des erreurs de réécriture dans FormRequest dans Laravel (exemples de code). Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer.

La validation par défaut dans le framework laravel, lors de la gestion des erreurs, revient par défaut à la page précédente, et ne renvoie Json que lorsqu'il est ajax. Si nous voulons toujours renvoyer Json, alors nous devons réécrire la gestion des erreurs

comme suit : Dans le répertoire Requests, créez simplement une nouvelle classe BaseRequest

Introduction à la gestion des erreurs de remplacement dans FormRequest dans Laravel (exemple de code)

Le code est le suivant

<?php /**
 * @文件名称: BaseRequest.php.
 * @author: daisc
 * @email: jiumengfadian@live.com
 * @Date: 2019/1/8
 */

namespace App\Http\Requests\Front;


use Illuminate\Foundation\Http\FormRequest;
use Illuminate\Http\Exceptions\HttpResponseException;

class BaseRequest extends FormRequest
{

    public function failedValidation($validator)
    {

        $error= $validator->errors()->all();
       // $error = $validator;

        throw  new HttpResponseException(response()->json(['code'=>1,'message'=>$error[0]]));

    }


}
Copier après la connexion

réécrit la méthode failedValidation et gère l'erreur générée au format json.
Ensuite, dans la classe de vérification du traitement personnalisé, héritez simplement de cette classe
Par exemple : RegisterForm dans

<?php namespace App\Http\Requests\Front;



class RegisterForm extends BaseRequest
{
    /**
     * 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 [
            &#39;phone&#39;=>'required|regex:"^1\d{10}"',
            'email' => 'required|email',
            'password'=>'required|confirmed'
        ];
    }

    public function messages()
    {
        return [
            'phone.required'=>'手机号不能为空',
            'phone.regex'=>'请输入正确的手机号',
        ];

    }



}
Copier après la connexion

Lorsque nous appelons RegisterForm dans le contrôleur, nous renverrons les informations d'erreur dans. Format Json.
Peu importe qu'il s'agisse d'AJAX

Introduction à la gestion des erreurs de remplacement dans FormRequest dans Laravel (exemple de code)

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:segmentfault.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal