多包含和过滤

时间:2015-07-27 13:03:21

标签: cakephp cakephp-3.0

我需要提供很多包含的困难请求,但我不了解如何过滤包含的结果。

我的表就是这样:

菜单 HasMany Sousmenus

Sousmenus HasMany Droits

Droits BelongsToMany 角色

角色 BelongsToMany 服务

我知道Services_id,我希望菜单中包含Sousmenus包含Droits包含的角色:

与我的Service_id链接的角色

与这些角色相关的Droits

苏斯梅纳斯与这些计划有关联

和链接到此sous_menus的菜单。

很难解释。

编辑:我试过了,但它不起作用:

$menus = TableRegistry::get('Menus');
$query = $menus->find()->contain(['Sousmenus.Droits.Roles.Services'])->matching('Sousmenus.Droits.Roles.Services', function ($q) {
    return $q->where(['Services.id' => 6]);
});

0 个答案:

没有答案