七、自动验证

自动验证:前段会一些对表单的验证操作(通过JavaScript),但是JavaScript有些情况下是不好用的(例如禁用JavaScript)。因此后端也需要有一套类似的机制,能够在后端实现对用户提交的数据进行验证,这个就是后端的自动验证

1.准备工作

(1)使用test9表单页面,将其提交到test10路由
创建test9,test10的路由
在这里插入图片描述
(2)编写控制器方法在这里插入图片描述
编写test9页面,提交地址为test10
在这里插入图片描述
效果:
在这里插入图片描述
先验证,在入库

2.验证方式

建议去查看手册

(1)基本语法
使用控制其中的validate方法来完成, t h i s − > v a l i d a t e ( this->validate( this>validate(request,{验证规则,{错误信息}});如果验证失败,laeavel会自动将用户重定向会上一个位置,并且验证错误信息一次性存放到session中。

(2)基本验证规则
required:不能为空
max:255 最长255个字符
min:1 最少1个字符
email:验证邮箱是否合法
confirmed:验证两个字段是否相同,如果验证的字段是password,则必须输入一个与之匹配的password_confirmaton字段
integer:验证字段必须是整形
ip:验证字段必须是IP地址
numeric:验证字段必须是数值
max:value:验证字段必须大于等于最大值,和字符串,数值,文件字段的size规则一起使用
min:value:验证字段的最小值,对峙富川,数值,文件字段而言,和size规则使用方法一致
size:value:验证字段必须有和给定值value相匹配的尺寸,对字符串而言,value是相应的字符数目;对数值而言,value是给定整型值;对文件而言,value是相应的文件字节数
string:验证字段必须是字符串
unique:表名,字段,需要排出的ID
注意:多个验证规则可以通过“|”字符进行隔开
语法:$this->validate(数据对象,【数组形式的验证规则】);validate是基类控制器

方法:
在这里插入图片描述
(3)输出错误信息

显示验证错误信息
语法:
在这里插入图片描述
在这里插入图片描述
(4)把输出效果转化成中文

方法1:自定义翻译
可以再自动验证的时候,给validate方法传递第三个参数第三个参数即错误提示:
在这里插入图片描述
该方式比较繁琐,每个规则都要自己定义错误信息。
在这里插入图片描述
方法2:借助第三方的语言包
由于中文和英文都是属于语言范畴。如果要切换提示信息,则需要有中文语言包的支持。目前框架只有en语言包,则需要其他语言包,需要去下载。

查看版本号;
在这里插入图片描述
使用命令:composer require caouecs/laravel-lang:~6.0下载符合版本号的语言包
在这里插入图片描述
下载成功:
在这里插入图片描述
打开caouecs,将zh-CN复制粘贴放到resources/lang中
在这里插入图片描述
在这里插入图片描述
打开config文件夹,进行配置
在这里插入图片描述
在这里插入图片描述
成功:
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值