我是 symfony 2 的新手,与 FOSUserBundle 和 PUGXMultiUserBundle 一起工作,我在检索具有特定角色的用户列表时遇到了麻烦,例如:ROLE_ADMINISTRATEUR 通知他们一些事情。无论如何,受此启发,这是我的 UserRepository 类:
<?php
namespace OC\UserBundle\Entity;
use Doctrine\ORM\EntityRepository;
class UserRepository extends EntityRepository
{
public function findByRoles($role)
{
$qb = $this->_em->createQueryBuilder();
$qb->select('u')
->from('OCUserBundle:User', 'u')
->where('u.roles LIKE :roles')
->setParameter('roles', '%"'.$role.'"%');
return $qb->getQuery()->getResult();
}
}
这是控制器操作中的代码:
$em=$this->getDoctrine()->getManager();
$repository2=$em->getRepository('OCUserBundle:User');
$roles='ROLE_ADMINISTRATEUR';
$users=$repository2->findByRoles(array('roles'=>$roles));
Return $this->render('OCUserBundle:Default:test.html.twig',array(
'users'=>$users));
和我的 test.html.twig 页面:
{% for a in users %}
{{a.username}}
{% endfor %}
我得到的只是一个空页面。任何帮助,将不胜感激