大伙有没有思考过这样一个问题:想打印save执行执行的sql? 1.如果想校验属性是否赋值错误可以这样玩;在save之前使用 $form->validators;var_dump($form->getErrors());之类打印;如果是返回空数组说明没错 2.还有种情况是你可以自己故意写错字段名称使其报错观察;
public function actionExamine() { //获取最近一条数据 $data = AutomaticAudit::find()->where(['store_id'=>$this->store->id])->asArray()->one(); if(empty($data)){ $data['id'] = 0; $data['status'] = 0; } if (\Yii::$app->request->isAjax) { $param = \Yii::$app->request->post(); if($param['id']){ //存在主键id $form = AutomaticAudit::findOne($param['id']); }else{ $form = new AutomaticAudit(); //不存在主键id,实例化 } if(empty($param['time'])){ return ['code'=>1,'msg'=>'跳过审核时间不能为空']; } $form->status = $param['status']; $form->time = $param['time']; $form->time_type = $param['time_type']; $form->no_goods_ids = $param['no_goods_ids']; $form->store_id = $this->store->id; if(!empty($param['no_goods_type'])){ $form->no_goods_type = implode(',',$param['no_goods_type']); } if($form->save()){ //save函数根据情况自动执行是更新或者插入 return ['code'=>0,'msg'=>'更新成功']; } return ['code'=>1,'msg'=>'更新失败']; } return $this->render('examine', [ 'data' => $data, ]); }