Doctrine2 - 父母,孩子和兄弟用户,如

时间:2017-02-13 10:09:40

标签: doctrine-orm tree siblings multiple-users

经过一些研究,我仍然没有找到解决我的小问题的方法! 我希望为我的用户提供一种金字塔式的层状结构,但有了“兄弟用户”的概念,请让我解释一下。

我有这样的用户:

树只意味着谁创建了谁,实际上两个建筑管理员都管理同一个建筑,并且必须看到对方创造了什么。

传奇:

B =>建筑物,s =>服务,r =>房间,a => admin(带着他的身份证)

  • B1-A1
    • B1-S1-A2
      • B1-S1-R1-A2
      • B1-S1-R2-A3
    • B1-S1-A4
      • B1-S1-R1-A5
      • B1-S1-R2-A6
    • B1-S2-A7
  • B1-A8
    • B1-S1-A9
    • B1-S2-A10
      • B1-S2-R1-A11

我的问题是,我怎样才能根据我的用户来获取不同项目的访问权限?

例:

' B1-S2-A7'应该能够看到b1-s2-r1-a11,因为即使他不在他的直接树中,他也在他的下方。

另外,' b1-s1-a9'应该看看他的兄弟姐妹创造了什么? ' B 1 -S-A2'和' b1-s1-a4'。

我已经开始尝试使用路径结构,但我希望您的意见和建议不会出错!

先谢谢;)

1 个答案:

答案 0 :(得分:0)

我会阅读doctrine docs on hierarchical data。我使用了extensions bundle和一个嵌套的类似的东西。

现在,关于某些用户能够看到节点。我认为这听起来像是数据库管理员的问题。我认为这听起来更像是可以放入代码中的业务逻辑。扩展包提供了一些很好的功能,只用于获取子节点,我认为你可以将这些子节点包装在一些方便的服务中。