0
如何添加多個角色並使用symfony2中的FOSUSERBUNDLE來檢查這個角色?如何向用戶添加多個角色並在symfony2中使用FOSUSERBUNDLE來檢查
我有一些問題可以添加多個角色給單個用戶FOS.Any想法如何添加和檢查我的控制器和樹枝?
如何添加多個角色並使用symfony2中的FOSUSERBUNDLE來檢查這個角色?如何向用戶添加多個角色並在symfony2中使用FOSUSERBUNDLE來檢查
我有一些問題可以添加多個角色給單個用戶FOS.Any想法如何添加和檢查我的控制器和樹枝?
FOSUserBundle具有addRole()和removeRole()方法來添加和刪除角色。
做動作時,可能是這樣的:
/**
* @Route("/admin/user/change-role/{id}/{role}")
*/
public function roleAction($id, $role)
{
$em = $this->getDoctrine()->getManager();
$user = $em->getRepository('MyGreatBundle:User')->find($id);
if (!$user) {
throw $this->createNotFoundException('No user found for id '.$id);
}
if ($user->hasRole($role)){
$user->removeRole($role);
} else {
$user->addRole($role);
}
$username = $user->getUsername();
$em->flush();
return $this->render('MyGreatBundle:Default:role.html.twig', array('result' => $username, 'role' => $role,));
}
這個動作添加或刪除用戶角色。操作接受用戶和角色的ID。角色可以是例如:ROLE_NEWS,ROLE_EVENT,ROLE_SOMETHING ...如果用戶已經擁有這個角色,那麼動作將會刪除該角色,否則它會被添加。
您還可以使用hasRole()方法創建用於檢查角色的類似操作。
我不知道爲什麼負面評論 – aniltc 2014-09-30 20:14:49