将用户添加到角色的适当方法是什么.. 对于每个新用户,我是否必须这样做:
$em->getRepository('MyBundle:Role')->findOneBy(array('name' => 'ROLE_USER'))
每次?
我不太喜欢 UserBundle 有多大……而且我不使用 XML。我正在使用 YML/Annotations,所以 UserBundle 对于某些事情很难遵循。
所以是的,进行用户注册并将他与默认角色相关联的最佳/最干净的方式是什么?
将用户添加到角色的适当方法是什么.. 对于每个新用户,我是否必须这样做:
$em->getRepository('MyBundle:Role')->findOneBy(array('name' => 'ROLE_USER'))
每次?
我不太喜欢 UserBundle 有多大……而且我不使用 XML。我正在使用 YML/Annotations,所以 UserBundle 对于某些事情很难遵循。
所以是的,进行用户注册并将他与默认角色相关联的最佳/最干净的方式是什么?
我发现的最简单的方法就是在你的用户对象上定义roles
一个类型的字段。array
然后,当您创建用户(注册或其他)时,它就像
$roles = array('ROLE_USER');
$user->setRoles($roles);
我在这个 gist中整理了我的用户注册过程的模型。它的功能并不完全(如果需要,我可以稍后充实它),但它应该让你指向正确的方向。
我写了几篇关于角色的博客文章,一个简单的解决方案http://blog.jmoz.co.uk/symfony2-fosuserbundle-roles和http://blog.jmoz.co.uk/symfony2-fosuserbundle-role-entities