我正在使用SonataAdminBundle开发后端,我希望通过按角色列出用户来管理用户,例如管理员列表和简单用户列表。
我覆盖了用户管理类(AdministrateurAdmin和SimpleuserAdmin),如下所示:
<?php
namespace Myproject\BackendBundle\Admin;
use Sonata\UserBundle\Admin\Model\UserAdmin as BaseUserAdmin;
class AdministrateurAdmin extends BaseUserAdmin
{
// ...
}
我想按角色 ROLE_ADMIN 显示管理员。
答案 0 :(得分:0)
尝试添加此功能:
public function createQuery($context = 'list')
{
$query = parent::createQuery($context);
$query->andWhere(
$query->expr()->in($query->getRootAliases()[0] . '.roles', ':my_param')
);
$query->setParameter('my_param', 'ROLE_ADMIN');
return $query;
}