新しく作成した yii モデルを 2 回保存しようとしています。最初は自動インクリメント ID を取得するためです。そして、その id 関連のものを保存する 2 回目:
$node = new Node;
$node->attributes = $attrs;
$node->save(); // now I have 'id'
$node->vector = calcVector($node->id); // vector is based on 'id'
$node->save();
2 番目の保存(編集: エラーが別の場所でスローされました) では、次のエラーがスローされます: Integrity constraint violation: 1062 Duplicate entry
。予想される動作は、既に保存されているモデルを単純に更新することです。
2回目に保存する正しい方法は何ですか?
(できます$node = Node::model()->findByPk($node->id);
が、それは正しくないようです)