Symfony2用户角色(BETA2)

时间:2011-05-25 23:54:03

标签: symfony user-roles

将用户添加到角色的适当方式是什么?对于每个新用户,我是否必须这样做:

$em->getRepository('MyBundle:Role')->findOneBy(array('name' => 'ROLE_USER'))

每一次?

我不太喜欢UserBundle的大小......而且我不使用XML。我正在使用YML / Annotations,因此对于某些事情,UserBundle很难遵循。

是的,用户注册并将他与默认角色关联的最佳/最干净的方法是什么?

2 个答案:

答案 0 :(得分:4)

我发现最简单的方法就是将roles定义为User对象上array类型的字段。然后,当您创建用户时(注册或诸如此类),它就像

一样简单
$roles = array('ROLE_USER');
$user->setRoles($roles);

我在this gist汇总了我的用户注册流程模型。它没有完全发挥作用(如果需要,我可以在以后充实它),但它应该让你指向正确的方向。

答案 1 :(得分:0)

我写了几篇关于角色的博客文章,一个简单的解决方案http://blog.jmoz.co.uk/symfony2-fosuserbundle-roleshttp://blog.jmoz.co.uk/symfony2-fosuserbundle-role-entities