Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/wix/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Django 向新用户授予默认权限或默认组_Django_Python Social Auth_Django Permissions - Fatal编程技术网

Django 向新用户授予默认权限或默认组

Django 向新用户授予默认权限或默认组,django,python-social-auth,django-permissions,Django,Python Social Auth,Django Permissions,默认行为似乎是新用户没有权限和组。不过,我不想手动授予每个新用户基本权限,我想他们也不想等我这么做 如何为新用户分配默认权限 已经提出了一些类似的问题,但对于一般情况没有明确的答案: 我使用的是pythonsocialauth,因此我没有自己的创建用户表单和视图,我想其他人都可以在其中设置默认权限。我假设我需要某种类型的用户创建钩子,但不确定最干净的方法是什么 这与创建可能授予用户的默认可能权限无关,但仅供参考 您可以订阅用户模型上的信号,并将新创建的用户放入所需的组或添加权限

默认行为似乎是新用户没有权限和组。不过,我不想手动授予每个新用户基本权限,我想他们也不想等我这么做

如何为新用户分配默认权限

已经提出了一些类似的问题,但对于一般情况没有明确的答案:

我使用的是
pythonsocialauth
,因此我没有自己的创建用户表单和视图,我想其他人都可以在其中设置默认权限。我假设我需要某种类型的用户创建钩子,但不确定最干净的方法是什么

这与创建可能授予用户的默认可能权限无关,但仅供参考

您可以订阅用户模型上的信号,并将新创建的用户放入所需的组或添加权限

from django.contrib.auth.models import Group

def add_to_default_group(sender, **kwargs):
    user = kwargs["instance"]
    if kwargs["created"]:
        group = Group.objects.get(name='groupname')
        user.groups.add(group)
在django 1.8+上,将以下代码放入


谢谢就我而言,我想我也需要。我还使用了
group,group\u created=group.objects.get\u或\u create(name='Default')
。我是Django的新手,我要将这些行添加到哪个文件中?
apps.py
是上面几行的文件(因此
AppConfig
from django.conf import settings

post_save.connect(add_to_default_group, sender=settings.AUTH_USER_MODEL)