3

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

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

每次?

我不太喜欢 UserBundle 有多大……而且我不使用 XML。我正在使用 YML/Annotations,所以 UserBundle 对于某些事情很难遵循。

所以是的,进行用户注册并将他与默认角色相关联的最佳/最干净的方式是什么?

4

2 回答 2

4

我发现的最简单的方法就是在你的用户对象上定义roles一个类型的字段。array然后,当您创建用户(注册或其他)时,它就像

$roles = array('ROLE_USER');
$user->setRoles($roles);

我在这个 gist中整理了我的用户注册过程的模型。它的功能并不完全(如果需要,我可以稍后充实它),但它应该让你指向正确的方向。

于 2011-05-26T16:23:03.233 回答
0

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

于 2011-12-16T11:58:15.657 回答