laravel書き込みAPIたときにカスタムエラーメッセージ

著作権:経験の声は、私は、変更パッケージスパイシーバー、およびその他のは、ソースを明記してくださいかどうかわかりません。https://blog.csdn.net/zhezhebie/article/details/89740091

トラップする方法内部エラー:

ページ:
https://blog.csdn.net/zhezhebie/article/details/78500326

内部API:

$inputs = $request->all();
$validator = Validator::make($inputs, [
    'email' => 'required|email',
    'password' => 'required|string|min:6|max:20',
]);
if ($validator->fails()) {
    $error = $validator->errors()->first();
    return outPutJson('', 201, $error);
}

異常がある場合、それはにValidationExceptionを投げると、そうなりますと、>検証() - ()それから私は、すべての場所で検証する必要上記のコード断片を書いた、そして今、リクエストを使用して実際には非常に愚かだと思います我々はそこにグローバルキャプチャ異常を行うことができます!

D:Handler.php \ \ phpStudy \ PHPTutorial \ WWWは\ XXX \アプリ\例外

if ($exception instanceof ValidationException) {
    if (substr($_SERVER['REQUEST_URI'], 1, 3) == 'api') {
        $error = $exception->validator->errors()->first(); #参考下面的两个文件
        return outPutJson('', 201, $error);
    }
}

D:\ phpStudy \ PHPTutorial \ WWW \ XXX \ベンダ\ laravel \枠組み\ SRC \を照らし\検証\ ValidationException.php
D:\ phpStudy \ PHPTutorial \ WWW \ XXX \ベンダ\ laravel \枠組み\ SRC \を照らし\サポート\ MessageBag .PHP

今、私たちは内側とウェブ検証コンポーネントと同様の方法を使用することができます!その素晴らしいではありません!

public function updateUserInfo(Request $request) {
    $user = auth()->user();
    $attributes = request()->validate(
        [
            'email' => 'required|email|unique:users,email,' . $user->id, #排除自己
            'telephone' => 'required|string|min:6|max:20',
            'nick_name' => 'required|string|min:1|max:20',
            'birthday' => 'required|date|before:8 years ago',
        ], [
            'birthday.before' => '亲爱的小仙女,人家8岁的时候在玩泥巴呢~',
        ]);

    if ($user->update($attributes)) {
        return outPutJson();
    }
    return outPutJson('', 201, '更新失败!');
}

おすすめ

転載: blog.csdn.net/zhezhebie/article/details/89740091