【问题标题】:overriding userAdmin by roles按角色覆盖 userAdmin
【发布时间】:2018-01-29 05:46:26
【问题描述】:

我正在使用SonataAdminBundle 开发后端,我想通过按角色列出用户来管理用户,例如管理员列表和简单用户列表。

我像这样覆盖了用户管理类(AdministrateurAdmin 和 SimpleuserAdmin):

<?php

namespace Myproject\BackendBundle\Admin;

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

class AdministrateurAdmin extends BaseUserAdmin
{
    // ...
}

我只想按角色 ROLE_ADMIN 显示管理员。

【问题讨论】:

    标签: symfony sonata-admin sonata


    【解决方案1】:

    尝试添加此功能:

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-09-15
      • 2019-09-14
      • 1970-01-01
      • 1970-01-01
      • 2017-10-03
      • 1970-01-01
      相关资源
      最近更新 更多