Php Yii2-save()不';救不了
我有订单模型,我想更改其中一个订单中的“状态”。我执行这样的代码:Php Yii2-save()不';救不了,php,yii2,Php,Yii2,我有订单模型,我想更改其中一个订单中的“状态”。我执行这样的代码: $order = new Order(); $new = $order->find()->where(['status' => 'new'])->orderBy(['id' => SORT_ASC])->one(); if($new){ $new->status = "queued"; $ok = $new-&
$order = new Order();
$new = $order->find()->where(['status' => 'new'])->orderBy(['id' => SORT_ASC])->one();
if($new){
$new->status = "queued";
$ok = $new->save();
return true;
}
而且,$new
是我想要的记录,所以没关系。因此,当我试图保存更改时,它不会这样做,$ok
给我“false”。我不知道为什么,我以前使用过save()
,从来没有遇到过问题
更新:
发现错误,它未连接到
save()
函数。由于模型验证,您的值未保存,您可以通过输入false跳过模型验证
$order = new Order();
$new = $order->find()->where(['status' => 'new'])->orderBy(['id' => SORT_ASC])->one();
if($new){
$new->status = "queued";
$ok = $new->save(false); // skip model validation
return true;
}
调用
save()
后,通过显示$new->getErrors()
的结果,您可以查看是否存在任何验证错误。好的,我在规则中发现了一个错误-getErrors()
帮助很大:)