Doctrine嵌套集与邻接列表

时间:2011-03-12 15:53:26

标签: symfony1 doctrine nested-sets adjacency-list

我需要按级别显示一个类别树(每个级别的所有树元素)。

Root
Cat1 (parent_id) Cat2 (parent_id) ...
Subcat1 (parent_id) Subcat2 (parent_id) Subcat3 (parent_id) ...

我尝试使用嵌套集结构实现它,但我遇到了一个问题:没有简单的方法来获取父节点的id(没有对数据库的单独查询)。我应该使用邻接列表吗?

目标是尽可能快地显示,最好是对数据库进行一次查询。

1 个答案:

答案 0 :(得分:1)

阅读this article about Nested Set vs Adjacency List。您将看到嵌套集使查询更容易编写。 另请阅读关于the nested set hierarchy hydration method的§,您将了解如何使用单个查询以层次结构形式获取多个学说对象。