【发布时间】:2019-02-03 15:54:50
【问题描述】:
我正在学习 Symfony 和 Doctrine 并创建了一个简单的网站,但我被困在这一步。
我有两张桌子:users 和 languages
用户包含:id、用户名...
语言包含:user_id、语言...
现在我正在尝试按语言获取,例如:获取同时说 english 和 french 的用户,结果将返回用户 ID 2
在普通 PHP 中,我可以使用 PDO 进行内部连接,但我正在尝试遵循教义语法,但这不会返回正确的结果
public function getMatchingLanguages ($a, $b) {
return $this->createQueryBuilder('u')
->andWhere('u.language = :val1 AND u.language = :val2')
->setParameter('val1', $a)
->setParameter('val2', $b)
->getQuery()
->execute();
}
我在我的控制器中调用此方法,并且查询非常基本,因为我找不到如何按照我的示例进行连接的文档
【问题讨论】:
-
我不认为
Doctrine提供了任何更奇特的方法。 -
花哨是什么意思?我只是问,因为代码没有按预期工作。它不会返回用户的语言
-
不要采取错误的方式,但您确实需要更加努力地查看文档。很多例子。更不用说软问题了。
-
我明白,没问题。实际上,通过阅读 Symfony 上的文档,我设法创建了一个带有登录系统的博客站点,但学说有点难以理解。由于某种原因,我觉得它很复杂。
-
看起来您的实体之间具有经典的 OneToMany 关系。这方面有很多文档。尝试here 开始。
标签: php mysql symfony doctrine-orm symfony4