0
注文モデルがあり、注文の1つで「ステータス」を変更したいとします。私は、このようなコードを実行します。Yii2 - save()は保存されません
$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
は私がしたいレコードですので、それは大丈夫です。変更を保存しようとすると、do notはそれを行い、$ok
は私に "false"を与えます。私はなぜ、私は前にsave()
を使用して、決してそれに問題を抱えているのか分かりません。
更新: 発見された間違いで、save()
機能に接続されていません。
'$ new-> getErrors()'の結果を 'save()'が呼び出された後に表示することで、検証エラーがあるかどうかを確認できます。 – Bizley
さて、私が持っていたルールに間違いがあったことが分かりました。 'getErrors()'が助けてくれました:) – Olga