佳木斯湛栽影视文化发展公司

主頁 > 知識庫 > Laravel框架FormRequest中重寫錯誤處理的方法

Laravel框架FormRequest中重寫錯誤處理的方法

熱門標(biāo)簽:銀行業(yè)務(wù) 電子圍欄 Mysql連接數(shù)設(shè)置 服務(wù)器配置 阿里云 團(tuán)購網(wǎng)站 科大訊飛語音識別系統(tǒng) Linux服務(wù)器

laravel 框架中默認(rèn)的validate驗(yàn)證,在處理錯誤的時候,默認(rèn)是返回上一頁,當(dāng)為ajax的時候才會返回Json。如果我們要一直返回Json的話,那么需要重寫錯誤處理

如下:在Requests目錄只用 新建BaseRequest

代碼如下

?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]]));

  }

}

重寫了failedValidation方法,將拋出錯誤處理為了json格式的。

然后在自定義的處理驗(yàn)證類中,繼承該類就行了,

如:RegisterForm

?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 [
      'phone'=>'required|regex:"^1\d{10}"',
      'email' => 'required|email',
      'password'=>'required|confirmed'
    ];
  }

  public function messages()
  {
    return [
      'phone.required'=>'手機(jī)號不能為空',
      'phone.regex'=>'請輸入正確的手機(jī)號',
    ];

  }

}

當(dāng)我們在控制器中調(diào)用RegisterForm的時候,就回返回Json格式的錯誤信息。

不分是否是AJAX

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

您可能感興趣的文章:
  • Laravel中使用FormRequest進(jìn)行表單驗(yàn)證方法及問題匯總
  • Laravel框架表單驗(yàn)證詳解
  • Laravel 5框架學(xué)習(xí)之表單驗(yàn)證
  • Laravel 4 初級教程之Pages、表單驗(yàn)證
  • laravel5.2表單驗(yàn)證,并顯示錯誤信息的實(shí)例
  • Laravel框架表單驗(yàn)證格式化輸出的方法
  • Laravel框架表單驗(yàn)證操作實(shí)例分析
  • Laravel5.1 框架表單驗(yàn)證操作實(shí)例詳解
  • laravel框架使用FormRequest進(jìn)行表單驗(yàn)證,驗(yàn)證異常返回JSON操作示例

標(biāo)簽:棗莊 衡水 蚌埠 萍鄉(xiāng) 江蘇 大理 廣元 衢州

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Laravel框架FormRequest中重寫錯誤處理的方法》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266
    兴仁县| 安顺市| 济阳县| 城步| 娱乐| 合作市| 宁城县| 木里| 海晏县| 綦江县| 棋牌| 梅河口市| 宽城| 三门峡市| 屏边| 凉城县| 沽源县| 麻江县| 西藏| 濉溪县| 石嘴山市| 长丰县| 电白县| 屏东市| 屯昌县| 恭城| 视频| 兴海县| 银川市| 山丹县| 东兰县| 芜湖县| 互助| 山阴县| 阳原县| 澄江县| 潮州市| 长岭县| 囊谦县| 淮阳县| 陆良县|