Добавьте что-нибудь в метод Security в symfony 4 - PullRequest
0 голосов
/ 24 апреля 2018

У меня есть такой код на самом деле

В контроллере Symfony

/**
 * @Route("/form/partners/{id}/{formState}", name="bodyshopPartnerEdit")
 * @Security("has_role('ROLE_ADMIN') || has_role('ROLE_BODYSHOP_HANDLER_PARTNER_EDIT')")
 */
public function editPartner(Request $request, EntityManagerInterface $em)

В шаблоне Twig

{% if is_granted('ROLE_ADMIN') or is_granted('ROLE_BODYSHOP_HANDLER_PARTNER_EDIT') %}

Я хотел бы знать, могу ли я изменить методы has_role () и is_granted () для автоматического принятия ROLE_ADMIN вместо проверки двух ролей каждый раз

Спасибо!

1 Ответ

0 голосов
/ 24 апреля 2018

вы можете использовать иерархические роли и проверить на роль "ROLE_BODYSHOP_HANDLER_PARTNER_EDIT"

security:
# ...

    role_hierarchy:
        ROLE_ADMIN: [ROLE_BODYSHOP_HANDLER_PARTNER_EDI]

В вашем контроллере:

 /**
  * @Route("/form/partners/{id}/{formState}",name="bodyshopPartnerEdit")
  * @Security("has_role('ROLE_BODYSHOP_HANDLER_PARTNER_EDIT')")
  */
 public function editPartner(Request $request, EntityManagerInterface $em){
     ...........
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...