1

私はpropelとsoftdeleteを使用し、ネストされたセットを推進します。

  • 子のないノードを削除して$node->undelete()からすべてが正常に実行されると、ノードはソフト削除から回復しています。
  • しかし、ノードに子があり、それを削除すると、$node->undelete()子のないノードのみが回復されます。

アイデアや解決策はありますか?

4

1 に答える 1

0

ええ、undelete()メソッドは非常に単純です。それはすべて、deleted_atその正確なテーブルの列を無効にします。ただし、サブテーブルにもソフト削除動作がある場合は、次のようにすることができます。

SubTableQuery::create()
  ->includeDeleted()
  ->filterByParentId($parentRecord->getId())
  ->unDelete();
$parentRecord->unDelete();
于 2013-01-09T16:24:46.420 に答える