我在phpcr中有以下结构
/foo1
/foo1/childcollection1
/foo1/childcollection2
/foo1/childcollection3
/foo2
/foo2/childcollection1
/foo2/childcollcetion2
/foo2/childcollection3
/foo2/childcollection4
/foo3
/foo4
/foo4/childcollection1
/foo4/childcollcetion2
...
我只需要捕获至少有一个子集的“foo”节点。
Childcollection在foo文档中映射为 / ** PHPCRODM \ Children(fetchDepth = 0)* /
我能够通过在我的存储库中跟踪内部联接查询来实现它
$query = $this->createQueryBuilder('foo');
$query->addJoinInner()
->right()->document('Path\PathBundle\Document\Childcollection', 'c')->end()
->condition()->child('c', 'foo');
因此,我确实拥有至少有一个childcollection节点的foo文档,但是当我添加页面功能时
$query->setMaxResults($limit);
我没有限制数量的文件。结果取决于foo文档中的子集合数量。
任何人都可以帮我查询只获取至少有一个子集的节点,以及我可以在哪里向该查询添加页面功能。
谢谢和最好的问候