无法在Django中自动添加组

时间:2014-05-06 12:40:56

标签: django django-admin

我正在使用Django 1.6并拥有CustomUser。 我希望默认情况下将创建的所有用户添加到组中。

我曾尝试将其添加到我的用户的save方法中,但它无效。

class MyUser(AbstractBaseUser, PermissionsMixin):
    name = models.CharField(max_length=200)
    section = models.CharField(max_length=200, null=True)
    department = models.ForeignKey(Department, null=True)
    ...
    objects = MyUserManager()

def save(self, *args, **kwargs):
    group = Group.objects.get(name='myhistory')
    self.groups.add(group)
    self.section="testing it saves"
    super(MyUser, self).save(*args, **kwargs)

它确实调用了save方法,因为它设置了上面的部分 - 但不会设置组。 它发现该组很好 - 只是没有设置它。

有人可以帮忙吗?

1 个答案:

答案 0 :(得分:0)

我认为你错过了缩进,

class MyUser(AbstractBaseUser, PermissionsMixin):
    name = models.CharField(max_length=200)
    section = models.CharField(max_length=200, null=True)
    department = models.ForeignKey(Department, null=True)
    ...
    objects = MyUserManager()

    def save(self, *args, **kwargs):
        group = Group.objects.get(name='myhistory')
        self.groups.add(group)
        self.section="testing it saves"
        super(SCVUser, self).save(*args, **kwargs)