Laravel Validator自定义错误返回提示消息并在前端展示

前言

Laravel Validator 默认返回的是英文的提示消息,而大多数情况我们需要自定义错误返回提示消息,本文将介绍一下如何自定义错误消息,并在前端展示。

自定义错误消息

别怪我太直接,代码奉上

$messages = [
   'phone.unique' => '重复的电话号码',
   'required' => '请将信息填写完整',
  ];

$this->validate($request, [
   'phone' => 'required|unique:table_name',
   'name' => 'required',
  ], $messages);

是不是很简单呀,只需要在validate()方法参数里面加个提示信息数组就好了,数组的key就是字段.验证方式或者直接验证方式,很显然,后者是应用于所有的,前者是应用于某一字段。

当然,你可能不是用的这种方式,其他验证器的也是一样的,看这里:

$validator = Validator::make($input, $rules, $messages);

是的,这样写也是传第三个参数,跟上面的方式是一样的。

错误提示前端展示

接下来讲一下前端如何展示这些错误提示呢,来让我们挨个打印一下

@if ($errors->any())
 @foreach ($errors->all() as $error)
 <div class="center alert alert-danger alert-dismissible fade show" role="alert">
  <strong>遇到错误: </strong>
   {{ $error }}
  <button type="button" class="close" data-dismiss="alert" aria-label="Close">
   <span aria-hidden="true">×</span>
  </button>
 </div>
 @endforeach
@endif

原谅我前端太差,所以用了bootstrap的样式,为了突出主要部分,扒了这段代码的衣服是这样的:

@if ($errors->any())
 @foreach ($errors->all() as $error)
   {{ $error }}
 @endforeach
@endif

嗯,瞬间清爽了很多。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对我们的支持。

(0)

相关推荐

  • Laravel Validator 实现两个或多个字段联合索引唯一

    Laravel的Validation还是蛮好用的,使用Validator可以非常方便的验证表单,它提供了unique唯一性验证,但是默认只能验证一个字段,那遇到两个甚至多个字段的联合索引,需要满足复杂条件唯一性怎么实现呢 Validator复杂唯一性实现方法 我们可以用自定义 Rule 自定义验证规则,比如像这样: [...] $where = [ 'name' => $request->name, 'phone' => $request->phone ]; $this->v

  • PHP使Laravel为JSON REST API返回自定义错误的问题

    我正在开发某种RESTful API.发生一些错误时,我会抛出一个App :: abort($code,$message)错误. 问题是:我希望他用键"代码"和"消息"抛出一个json形成的数组,每个数组都包含上述数据. Array ( [code] => 401 [message] => "Invalid User" ) 有没有人知道是否可能,如果是,我该怎么做? 去你的app / start / global.php. 这将将40

  • Laravel5框架自定义错误页面配置操作示例

    本文实例讲述了Laravel5框架自定义错误页面配置操作.分享给大家供大家参考,具体如下: ♩ 背景 最近试着学习 laravel 5.5,使用 composer 下载新的框架源代码 composer create-project --prefer-dist laravel/laravel lar5Pro 5.5.* 发现在输入错误的链接时,会有如下的提示信息: 想到,一般成型的网站都会自定义404.501.503等页面,所以通过网上搜索方法,进行测试,可推荐如下的实现过程 - 框架: Lara

  • 如何优雅的使用 laravel 的 validator验证方法

    web 开发过程中经常会需要进行参数验证,laravel 中我们常用 validator 或者 request 这两种方法来进行验证,但是这两种验证都不是很方便进行自定义提示信息,自定义验证规则,所以下面来介绍一种很方便的用法: 新建抽象类 <?php namespace App\Http\Validators; use Validator; abstract class AbstractValidator { /** * Validator * * @var \Illuminate\Valid

  • Laravel4中的Validator验证扩展用法详解

    本文实例讲述了Laravel4中的Validator验证扩展用法.分享给大家供大家参考,具体如下: 不管写接口还是写web页面,实质都是传入参数,然后进行业务逻辑,然后再输出具体内容.所以,对参数的验证是不可避免的一个环节,比如传过来的email是不是为空,是不是合法的email格式?laravel已经为phper想到简化这种逻辑的办法了.就是Validator. Validator的使用 制造一个验证器 validator使用Validator::make可以制造一个验证器.然后使用验证器判断

  • Laravel5.1自定义500错误页面示例

    本文实例讲述了Laravel5.1自定义500错误页面的方法.分享给大家供大家参考,具体如下: Laravel 5.1中500错误是程序错误,程序错误一定是系统自带的500错误,可以通过以下步骤简单实现自定义500错误页面. 编辑PHP文件app/Exceptions/Handler.php内容如下: public function render($request, Exception $e) { if ($e instanceof ModelNotFoundException) { $e =

  • Laravel实现自定义错误输出内容的方法

    本文实例讲述了Laravel实现自定义错误输出内容的方法.分享给大家供大家参考,具体如下: 这里分析一下laravel对于提交的数据进行验证,怎么自定义错误输出的内容 在根目录下运行命令 php artisan make:request PostUpdateRequest 会在app\Http\Requests目录下创建PostUpdateRequest文件 比如我设置 public function rules() { return [ 'posts_title' => 'required',

  • Laravel Validator自定义错误返回提示消息并在前端展示

    前言 Laravel Validator 默认返回的是英文的提示消息,而大多数情况我们需要自定义错误返回提示消息,本文将介绍一下如何自定义错误消息,并在前端展示. 自定义错误消息 别怪我太直接,代码奉上 $messages = [ 'phone.unique' => '重复的电话号码', 'required' => '请将信息填写完整', ]; $this->validate($request, [ 'phone' => 'required|unique:table_name',

  • Laravel统一封装接口返回状态实例讲解

    前后端分离,接口返回封装方便你我他(方便前后端合作开发) 在Laravel中可以在公共继承的Controller.php写方法进行调用返回 app/Http/Controllers/Controller.php 成功返回 /** * $msg 返回提示消息 * $data 返回数据 */ public function success($msg,$data = []) { return response()->json([ 'status' => true, 'code' => 200,

  • laravel dingo API返回自定义错误信息的实例

    laravel 在使用了 dingo API 后,错误信息被dingo异常类接管了,返回信息变成了 : 要返回自定义的错误信息,就需要再把错误异常类接管回来(大概这个意思...) 方法: 在 app\Providers\AppServiceProvider.php 中的 boot() 方法 添加如下代码: app('api.exception')->register(function (\Exception $exception) { $request = Request::capture();

  • laravel Validator ajax返回错误信息的方法

    将return back()->withErrors($validator->errors())->withInput();替换为下面的代码 $validator = \Validator::make($request->input(), $rules, $messages); if ($validator->fails()) { //将返回错误循环组装成字符串 $arr = []; foreach ($validator->getMessageBag()->to

  • ASP.NET中MVC使用AJAX调用JsonResult方法并返回自定义错误信息

    一.如何用AJAX调用JsonResult方法 比如FuckController中添加有个返回JsonResult类型的方法FuckJson(): 复制代码 代码如下: <span class="kwd">public<span class="pln"> <span class="typ">JsonResult<span class="pln"> <span class=&

  • ThinkPHP中自定义错误页面和提示页面实例

    本文实例讲述了ThinkPHP中自定义错误页面和提示页面的方法.分享给大家供大家参考.具体实现方法如下: 在ThinkPHP中有两个方法时提示错误页面 _404('错误信息','跳转的地址');halt('提示信息'); 这两个函数都可以自定义错误页面在配置文件中加 复制代码 代码如下: 'TMPL_EXCEPTION_FILE'=>'./Public/Tpl/error.html' 这样每次就会跳转到这个页面. 下面是我定制的错误页面 复制代码 代码如下: 在( 3 )秒后自动跳转,或直接点击

  • Laravel中validation验证 返回中文提示 全局设置的方法

    更改 resources\lang 目录下边的 validation.php <?php return [ /* |-------------------------------------------------------------------------- | Validation Language Lines |-------------------------------------------------------------------------- | | The follo

  • Jquery ajax执行顺序 返回自定义错误信息(实例讲解)

    1.多个Ajax 在一个function中的执行顺序 由于Jquery中的Ajax的async默认是true(异步请求),如果想一个Ajax执行完后再执行另一个Ajax, 需要把async=false就可以了. 复制代码 代码如下: function TestAjax(){            var UserName = $("#txtUserName").val();            $.ajax(            {                url: &quo

随机推荐