在我的模板中,我需要知道用户是否具有根据它显示事物的特定角色.到目前为止,我已经在我的用户类中实现了一个小函数:
public function hasRole($role) { $roles = array(); foreach ($this->getRoles() as $rol) { $roles[] = $rol->getRole(); } return in_array($role,$roles); }
它告诉我此用户是否具有作为参数传递的字符串指定的角色.这项工作可以从twig模板调用,但不允许我知道有关角色层次结构的任何信息.有没有办法从控制器访问角色层次结构?并直接从树枝模板?我查看了官方文档,但没有找到任何相关信息.
您可以使用下面的代码检查twig模板中的角色,它解释了如果当前用户具有以下角色,那么显示一些东西
{% if is_granted('ROLE_ADMIN') %} //show things related to admin role {%else if is_granted('ROLE_USER')%} //show things related to user role {% endif %}
希望这对你有所帮助.快乐编码!!