项目中需要对字段进行验证,本人使用的是控制器验证方式。话不多说,直接上报错信息:
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]);}