小编dan*_*dan的帖子

为什么authenticate() 为非活动用户返回None?

CustomUser喜欢以下内容:

        class CustomUser(AbstractBaseUser, PermissionsMixin):
            email = models.EmailField(max_length=100, unique=True)
            username = models.CharField(max_length=20, unique=True)
            is_active = models.BooleanField(default=False)
            is_staff = models.BooleanField(default=False)
            ...
Run Code Online (Sandbox Code Playgroud)

active default=False 用户注册后自动处理UserLogindef ,即:

        def UserLogin(request):
            if request.POST:
                username = request.POST['username']
                user = authenticate(username=username, password=request.POST['password'])
                print('user :', user)  # which is print None if user inactive 
                if user is not None:
                    print('is user active:', user.is_active)   # should print True or False  
                    if user.is_active:
                        login(request, user)
                        ... 
                    else:  # handle user inactive
                        ...
                else:  # for None …
Run Code Online (Sandbox Code Playgroud)

authentication django login django-custom-user

3
推荐指数
1
解决办法
1690
查看次数