我正在表单中进行查询。
这个想法是:现在我有一个包含所有用户的下拉列表,好吗?
我有一个这样的查询:
'query_builder' => function(EntityRepository $er) {
return $er->createQueryBuilder('u')->orderBy('u.lastName', 'ASC');
}
这完美无瑕!
我只需要与某个类别相关联的用户,而不是显示所有用户。这个定义在“user_data”表中(user_id + category_id)。
所以,我需要做类似的事情:
SELECT * FROM users
WHERE user_id IN (SELECT user_id FROM user_data WHERE category_id='2')
我没有任何看起来像 UserData 的实体,我只有 User.php,但在这个文件中我发现了这个:
/**
*@ORM\ManyToMany(targetEntity="My\Bundle\Entity\Data", inversedBy="users")
*@ORM\joinTable(name="user_data")
*/
protected $datas;
[...]
所以我看到建立了一个关系,但我不知道如何使用它来构建基于 2 个表的查询......
任何人都可以帮助我解决这个问题吗?:)
谢谢!