首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在创建用户时自动添加组和人员权限

如何在创建用户时自动添加组和人员权限
EN

Stack Overflow用户
提问于 2018-08-23 04:00:56
回答 2查看 2.2K关注 0票数 0

我运行的是Django 2.0.8,目前使用的是django-allauth。

当一个新的用户注册/注册,我希望他们被自动添加到一个组,并给予员工状态,以便他们可以登录到管理页面。

我有read some of the documentation,但我现在不明白它是如何联系在一起的,每个新用户都默认有一些权限。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-08-23 05:11:51

在这种情况下,如果你不能访问用户模型并且它的保存功能,你可以在post保存信号中添加你的逻辑。

代码语言:javascript
运行
复制
@receiver(models.signals.post_save, sender=User)
def post_save_user_signal_handler(sender, instance, created, **kwargs):
    if created:
       instance.is_staff = True
       group = Group.objects.get(name='Group name')
       instance.groups.add(group)
       instance.save()
票数 1
EN

Stack Overflow用户

发布于 2018-08-23 04:21:37

要将新用户标记为员工,请使用is_staff属性。要将用户添加到组中,请使用user.groups.add(group)从DB获取Group对象并将其添加到用户

代码语言:javascript
运行
复制
from django.contrib.auth.models import Group

user = User.objects.create_user('john', 'lennon@thebeatles.com', 'johnpassword')
user.is_staff = True
user.save()
group = Group.objects.get(name='Group name')
user.groups.add(group) 
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51974276

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档