【发布时间】:2021-08-09 09:56:43
【问题描述】:
我正在尝试制作自定义用户模型,而不是几个布尔列,我将根据一个 status 字段管理用户权限:
from django.db import models
from django.contrib.auth.models import AbstractUser
from django.utils.translation import ugettext_lazy as _
class MyUser(AbstractUser):
username = None
is_staff = None
is_superuser = None
is_active = None
email = models.EmailField(_('email address'), unique=True)
status = models.PositiveSmallIntegerField(default=0)
在settings.py 文件中添加:
AUTHENTICATION_BACKENDS = ['django.contrib.auth.backends.AllowAllUsersModelBackend']
然后,在尝试登录时,出现错误:This account is inactive.
如何忽略为我的自定义用户模型提交的is_active?
【问题讨论】:
-
你在尝试登录 django admin 吗?
-
@Amin - 不。在这种情况下我不使用 django admin
-
@Amin: 异常可能是由
AuthenticationForm:github.com/django/django/blob/…引发的
标签: python django django-3.1