Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/21.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
Python django自定义用户模型引用组和权限_Python_Django_Inheritance - Fatal编程技术网

Python django自定义用户模型引用组和权限

Python django自定义用户模型引用组和权限,python,django,inheritance,Python,Django,Inheritance,我制作了一个自定义用户模型 class User(AbstractBaseUser, PermissionsMixin): username = models.CharField(_('username'), max_length=30, unique=True, help_text=_('Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters'), validators=[

我制作了一个自定义用户模型

class User(AbstractBaseUser, PermissionsMixin):

    username = models.CharField(_('username'), max_length=30, unique=True,
    help_text=_('Required. 30 characters or fewer. Letters, numbers and @/./+/-/_ characters'),
    validators=[
        validators.RegexValidator(re.compile('^[\w.@+-]+$'), _('Enter a valid username.'), _('invalid'))
    ])

    first_name = models.CharField(_('first name'), max_length=30, blank=True, null=True)

    last_name = models.CharField(_('last name'), max_length=30, blank=True, null=True)

    email = models.EmailField(_('email address'), max_length=255)

    is_staff = models.BooleanField(_('staff status'), default=False,
        help_text=_('Designates whether the user can log into this admin site.'))

    is_active = models.BooleanField(_('active'), default=False,
        help_text=_('Designates whether this user should be treated as active. Unselect this instead of deleting accounts.'))

    '''
    groups = models.ManyToManyField(Group, verbose_name=_('groups'),
        blank=True, help_text=_('The groups this user belongs to. A user will '
        'get all permissions granted to each of '
        'his/her group.'),
        related_name="tmp_user_set", related_query_name="user")

    user_permissions = models.ManyToManyField(Permission,
        verbose_name=_('user permissions'), blank=True,
        help_text=_('Specific permissions for this user.'),
        related_name="tmp_user_set", related_query_name="user")
    '''



    date_joined = models.DateTimeField(_('date joined'), default=timezone.now)

    objects = UserManager()

    USERNAME_FIELD = 'username'
    REQUIRED_FIELDS = ['email',]

    class Meta:
        verbose_name = _('user')
        verbose_name_plural = _('users')

    def get_full_name(self):
        full_name = '%s %s' % (self.first_name, self.last_name)
        return full_name.strip()

    def get_short_name(self):
        return self.first_name

    def email_user(self, subject, message, from_email=None):
        send_mail(subject, message, from_email, [self.email])
在这里,当我将组引用到组,将用户权限引用到权限时,它会给出错误。当我从管理端添加这些组和权限时,如何获取这些组和权限

当我创建另一个类似于医院的模型并从类似于医院的用户(User)继承它时,我可以得到医院中的用户字段


有什么帮助吗?

类“User”中的本地字段“groups”与基类“PermissionsMixin”中类似名称的字段冲突,为什么不更改成员名称,比如更改为groups或groups?我更改了,我将其更改为groupss和User permissions。。添加额外的“s”。上面说同样的errorPermissionsMixin已经实现了您试图创建的内容:那么您为什么要尝试重新引入这些字段呢?Ohk明白了,那么当我添加用户时,如何在管理端包括组和用户权限字段??