如何使用不同的表cakephp制作树

时间:2010-11-11 18:17:40

标签: cakephp

我有这种结构......

爷爷有很多孩子,孩子有很多孩子

我可以制作这3张桌子的树吗?我认为我的问题确实是,我可以只使用那些表而不创建另一个表来构建树结构吗?

1 个答案:

答案 0 :(得分:2)

我认为你不能,因为树的行为适用于1个表。

但您可以使用表personspersons_kids

+--------------------+
|   persons          |
+--------------------+
|  id  |  Name       | 
+--------------------+
|  1   |  Grandpa    |
+--------------------+
|  2   |  Dad        |
+--------------------+
|  3   |  Me         |
+--------------------+
|  5   |  MyChildren |
+--------------------+
|  4   |  MyBrother  |
+--------------------+

+--------------------+
|   persons_kids     |
+--------------------+
| parent_id | kid_id | 
+--------------------+
|    1      |   2    | // Grandpa -> Dad
+--------------------+
|    2      |   3    | // Dad -> Me
+--------------------+
|    2      |   3    | // Dad -> MyBrother
+--------------------+
|    3      |   5    / // Me -> MyChildren
+--------------------+

parent_idkid_id都会指向person_id 您可以执行指向persons_kids表中的不同外键的不同模型。

祝你好运。

有关详细信息,请参阅Cookbook