学说查询构建器和manytomany


Doctrine query builder and manytomany

我有一个简单的问题。

我有一些用户。我有一些联系人。单个User可以有一些联系人。一个Contact可能由许多Users拥有,一个简单的ManyToMany关系:

User <-> user_contact <-> Contact

如何构建一个查询,该查询将返回类似于不属于User的所有Contact的内容。这些联系人可能归其他User所有,也可能不属于其他联系人。

MEMBER OF 选项将发挥魔力。

我认为您正在寻找这样的东西:

$em->createQuery("select c from Contract c where :userId NOT MEMBER OF c.Users")
   ->setParameter("groupId", <<YOUR_USER_ENTITY_OR_USER_ID>>)
   ->getResult();

当然,我不知道你的实体,但我认为这会给你一些想法。