在Tree cakephp 3中获取父节点

时间:2018-09-07 22:44:28

标签: php cakephp php-5.6 cakephp-3.6

假设我有一个名为 categories 的表,该表在CakePHP 3应用程序中使用树行为。如果为我提供了类别ID,是否有函数可以让我检查类别是否为父类别,或者是否需要功能来获取节点的父类别,而不必执行多个查找查询?

我在网上找不到任何东西。

感谢您的帮助

2 个答案:

答案 0 :(得分:1)

TreeBehavior使用parent_id字段,因此您可以准备名为ParentCategoriesChildrenCategories的关系。

$this->belongsTo('ParentCategories', [
    'className' => 'Categories',
    'foreignKey' => 'parent_id',
]);

$this->hasMany('ChildrenCategories', [
    'className' => 'Categories',
    'foreignKey' => 'parent_id',
]);

答案 1 :(得分:0)

根据Cakephp 3

已经有一个路径查找器,可用于查找特定节点/ ID的完整路径。 使用它,您可以得到如下的父节点:

effectiveDate

更多参考:https://github.com/cakephp/cakephp/issues/12539

希望这会有所帮助!