我正在开发 Symfony 2 并在“UserController”中创建一个名为“newAction”的新操作:
/**
* @Route("/new", name="user_new")
*/
public function newAction()
{
if (false === $this->get('security.context')->isGranted('ROLE_ADMIN')) {
return $this->forward('RikkeiLunchOrderBundle:User:access_denied.html.twig', Array());
}
}
我想检查用户是否具有角色管理员来创建新用户。但是我收到了这个错误(当用户不是管理员时):
URI“/user/new”的控制器不可调用。 500 内部服务器错误 - InvalidArgumentException
下面是 security.yml 中的 access_control 和 role_hierarchy:
access_control:
- { path: ^/user/login, roles: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/admin, roles: ROLE_ADMIN }
- { path: ^/user/list, roles: ROLE_ADMIN }
- { path: ^/user/delete, roles: ROLE_ADMIN }
- { path: ^/order/dish/new, roles: ROLE_ADMIN }
- { path: ^/API/admin/, roles: ROLE_ADMIN }
- { path: ^/, roles: ROLE_USER }
role_hierarchy:
ROLE_ADMIN: ROLE_USER
如果您知道解决方案,请帮助!