我有一个简单的控制器如下:
public function fetchDataAction($username){
$user_email = $this -> getDoctrine()
-> getRepository('AdminBundle:Users')
-> findBy( array('username' => $username ), array('id' => 2));
return $this -> render('AdminBundle:Admin:fetchData.html.twig', array('datas' => $user_email));
}
但是在运行代码时我遇到了错误:
Invalid order by orientation specified for AdminBundle\Entity\Users#userId
将一个数组传递给findBy()
方法,代码无错误地运行,但是当我传递多个数组时,它失败了!
问题出在哪里?
答案 0 :(得分:2)
问题是findBy
的第二个参数是排序顺序。将array('id' => 2)
作为排序顺序传递会导致您的错误(如果您已阅读过它的文字)。
因此解决方案是将两个过滤器标准传递到一个数组中:
-> findBy( array('username' => $username, 'id' => 2) );