You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Laravel 5.6:表单输入日期存入数据库前验证失败问题

排查日期验证失效的问题

让我帮你一步步找出验证失效的原因,看了你的代码,我发现几个关键问题:

  • 前端错误提示的判断条件写错了
    你错误提示标签里的v-if="errors.vin_no"完全不对啊!对应的字段明明是reportedDate,这个条件应该改成v-if="errors.reportedDate"。不然哪怕reportedDate验证失败了,错误信息也不会显示出来,看起来就像验证完全没生效一样。
    修正后的代码片段:

    <small class="text-danger" v-if="errors.reportedDate">{{errors.reportedDate[0]}}</small>
    
  • 检查后端字段名是否完全匹配
    你的验证规则里用的是reportedDate,得确保后端接收的表单参数名和这个完全一致(注意大小写,比如有些框架对驼峰和下划线命名很敏感,如果后端期望的是reported_date,那验证肯定会失效)。如果用的是Laravel这类框架,可以在控制器里加个dd($request->all()),看看请求里到底有没有reportedDate这个参数,值是什么格式。

  • 确认HTML5 date输入的格式兼容性
    虽然<input type="date">标准返回的是YYYY-MM-DD格式,和你的date_format:Y-m-d规则匹配,但要注意:有些旧浏览器不支持date类型,会退化成普通文本输入框,用户可能输入不符合格式的内容;另外如果用户通过浏览器控制台手动修改了输入值,也可能导致格式错误。可以考虑在前端加一层格式校验,或者给输入框加上pattern="\d{4}-\d{2}-\d{2}"属性来约束输入。

  • 验证规则是否真的被执行了
    最后要确认你的验证逻辑在表单提交时确实被触发了,比如在Laravel里,是不是在控制器里调用了$request->validate(),或者用了表单请求验证,别漏了执行验证的步骤。

内容的提问来源于stack exchange,提问作者Whisky Dollar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.29 07:55:17