Cakephp 2 用于"threaded"查询的额外连接



我正在使用树行为,当我通过 ->查询('螺纹',...) - 时。

,但我希望发生其他加入,所以类似:

$data = $this->Category->find('threaded', array(
    'joins' => array(
        array('table' => 'videos',
            'alias' => 'Video',
            'type' => 'LEFT',
            'conditions' => array(
                'Category.id = Video.category_id',
            )
        )
    )
));

类别 Hasmany 视频,但是 video 不是树,只是相关。

我可以使用螺纹查询吗?

生产"螺纹"输出蛋糕1)调用一个查找('all),然后2)将结果数组放在set :: nest()function。

因此,只需使用标准查找 您的自定义加入即可获取输出,然后只需使用Set::nest

(NB:Hash在蛋糕2中替换了Set,但蛋糕仍然内部使用Set。两者现在都可以使用。Hash::nest

因此,如果您看一下Cake的model.php,巢功能被称为So:

return Set::nest($results, array(
            'idPath' => '/' . $this->alias . '/' . $this->primaryKey,
            'parentPath' => '/' . $this->alias . '/' . $parent
        ));

将其用作呼叫的模板。对于您的数据,它看起来像:

return Set::nest($results, array(
            'idPath' => '/Category/id',
            'parentPath' => '/Category/parent_id'           ));

相关内容

  • 没有找到相关文章

最新更新