Question

I use propel and soft delete and propel nested set.

  • When I delete a node without children and then do $node->undelete() everything is fine, node is recovering from soft delete.
  • But if a node have children and delete it then if I do $node->undelete() it recovers only the node without any children....

Any ideas or solutions?

Was it helpful?

Solution

Yeah, the undelete() method is pretty simple, all it does it nullify the deleted_at column on that exact table. However, if you have the soft delete behavior on the sub table as well, then you could do this:

SubTableQuery::create()
  ->includeDeleted()
  ->filterByParentId($parentRecord->getId())
  ->unDelete();
$parentRecord->unDelete();
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top