使用TP5验证器遇到的坑分析

符号 阅读:204 2020-02-19 11:26:24 评论:0

项目中需要对字段进行验证,本人使用的是控制器验证方式。话不多说,直接上报错信息:

SQLSTATE[42S02]: Base table or view not found: 1146 Table 'skxx.sk_' doesn't exist

意思是数据库skxx中的某张表不存在!

看代码:

//验证规则
$rules = [
'code' => 'require|unique', //原因就出在这里,需要在规则中添加表名:格式为-->'require|unique:purchase'. 那是不是每一条都要加呢,答案是不需要
'name' => 'require',
'supplier_id' => 'require',
'deliver_time' => 'date',
'amount' => 'number',
'amount_paid' => 'number',
'rows' => 'require',
//预留验证
];
//错误信息
$message = [
'code.require' => '订单编号必填',
'code.unique' => '该编号已存在,请使用其他编号',
'name.require' => '订单名称必填',
'supplier_id' => '请选择供应商',
'deliver_time.date' => '交付日期必须为日期格式',
'amount.number' => '订单金额必须为数字',
'amount_paid.number' => '已付金额必须为数字',
'rows.require' => '请添加物料信息',
];
$result = $this->validate($data, $rules, $message);
if (true !== $result) {
return json(['code' => 1, 'msg' => $result]);
}
标签:nginx
声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

发表评论
搜索
关注我们

扫一扫关注我们,了解最新精彩内容