1
私は、Doctrine 1.2.4でZendフレームワーク でNestedSetの動作を使用していますが、既に保存されているルートノードの子ノードを挿入するときに問題があります Doctrineのドキュメントでは、同じページ 上の要素私の場合、ルートはすでに作成して保存し、私はここでそれDoctrine NestedSetツリーを操作する
の子を挿入する必要がありますされている間、私は本当にどのように知っていない例
//// reading old order info
$order = new Order();
$orderInfo = $order->read($order_id);
$oldOrder = $orderInfo->toArray();
$oldOrder = $oldOrder[0];
//// building the new order information
$renew = new Orders();
$renew->domain_id = (int) $oldOrder["domain_id"];
$renew->auth_id = (int) $oldOrder["auth_id"];
$renew->price = $oldOrder["price"];
$renew->type = (string) $oldOrder["type"];
$renew->timestamp = $oldOrder["timestamp"];
$renew->save();
//// doctrine throwing an error here complaining the $orderInfo should be an instance of Doctrine_Record while its now an instance of Doctrine_Collection
$aa = $renew->getNode()->insertAsLastChildOf($orderInfo);
ですdbから注文を取得し、それをdoctrに変換する方法
親ノードの教義のレコードを取得する必要があり、あなたが子供を挿入するためにそれを使用することができます// This will retrieve the 'parent' record
$orderInfo = Doctrine_Core::getTable('Order')->find($order_id);
// building the new order information
$renew = new Orders();
$renew->domain_id = (int) $oldOrder["domain_id"];
$renew->auth_id = (int) $oldOrder["auth_id"];
$renew->price = $oldOrder["price"];
$renew->type = (string) $oldOrder["type"];
$renew->timestamp = $oldOrder["timestamp"];
$renew->save();
$renew->getNode()->insertAsLastChildOf($orderInfo);
:ine_recordまたは任意の提案が