C'est peut-être une question noob mais voici:
J'ai un menu un menu qui contient quatre liens. Cependant, j'ai besoin que l'un des éléments soit accessible uniquement si l'utilisateur actuel a le rôle de "bénéficiaire".
Étant donné que les "rôles" de l'utilisateur sont un tableau contenant toutes sortes de rôles, comment puis-je définir mon itinéraire de manière à ce que l'utilisateur ait le rôle correct?
IE, disons qu'un utilisateur aléatoire a ce qui suit:
$user['roles'] = ['authenticated', 'beneficiary', 'elected'];
et passerait, mais un autre utilisateur aléatoire ayant ce qui suit:
$user['roles'] = ['authenticated', 'elected'];
ne le ferait pas.
Je suis presque sûr qu'il existe un moyen mais je ne trouve pas explicitement ce que je recherche dans la documentation de Drupal
Merci d'avance
Je n'ai jamais personnellement essayé cela, mais il semble que dans votre fichier routing.yml, vous pouvez spécifier une autorisation _role sous les exigences:
https://www.drupal.org/docs/8/api/routing-system/structure-of-routes
my_module.your_route:
path: '/your_menu_path'
defaults:
_controller: '\path\to\your\controller'
_title: 'Menu title'
requirements:
_role: 'beneficiary'