0

I am developing a backend using SonataAdminBundle and I want to manage users by listing them by roles, for example a list of admin and a list of simple user.

I overrode the user admin class (AdministrateurAdmin and SimpleuserAdmin) like this:

<?php

namespace Myproject\BackendBundle\Admin;

use Sonata\UserBundle\Admin\Model\UserAdmin as BaseUserAdmin;

class AdministrateurAdmin extends BaseUserAdmin
{
    // ...
}

I want to show just the administrators by role ROLE_ADMIN.

Jason Roman
  • 8,146
  • 10
  • 35
  • 40

1 Answers1

0

try to add this function :

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;
}