Symfony 2中的树状菜单,在一个实体中

时间:2013-10-05 14:51:41

标签: symfony entity relation

我正在使用Symfony 2.3框架。

我正在尝试创建一个允许我轻松创建树状菜单(使用root和child)的系统。

此字段允许显示它是root还是child(此实体的id是另一条记录)。

现在我想做一些关系OneToMany,但我不知道怎么做。是否有可能与同一个实体建立关系?

我想在这个实体中创建方法'getChildren',但我不知道我应该做什么操作。

示例:

class site {private $ id;私人$ name;私人$ parent; }

和db中的记录: 1 category_1 0 2子类别1 1 3个子类别_2 1 等

1 个答案:

答案 0 :(得分:1)

我认为在学说文档中甚至有一个例子: http://docs.doctrine-project.org/en/latest/reference/association-mapping.html#many-to-many-self-referencing

但是如果你真的想要构建一个Tree,你也可以考虑使用稍微不同的数据库模型的TreeExtension,它的性能更高一些: https://github.com/Atlantic18/DoctrineExtensions/blob/master/doc/tree.md