Symfony2 用户角色(BETA2)

发布于 2024-11-09 11:37:57 字数 295 浏览 0 评论 0原文

将用户添加到角色的适当方法是什么?对于每个新用户,我必须

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

每次都这样做吗?

我不太喜欢 UserBundle 有多大......而且我不使用 XML。我正在使用 YML/注释,因此 UserBundle 对于某些事情来说很难遵循。

那么,是的,进行用户注册并将其关联到默认角色的最佳/最干净的方法是什么?

What's the appropriate way to add a user to a role.. for every new user, do I have to do:

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

every time?

I'm not too much of a fan of how large UserBundle is.... and I don't use XML. I'm using YML/Annotations, so the UserBundle is pretty hard to follow for certain things.

So yes, what's the best / cleanest way to do a user signup and associate him to a default role?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

马蹄踏│碎落叶 2024-11-16 11:37:57

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

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

我在 这个要点。它的功能并不完整(如果需要,我可以稍后充实它),但它应该为您指明正确的方向。

The simplest way I've found is just to define roles as a field of type array on your User object. Then, when you're creating the user (on registration or whatnot), it's as simple as

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

I've put together a mockup of my user registration process in this gist. It's not fully functional (I can flesh it out later if needed), but it should get you pointed in the right direction.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文