模板django中的“用户”不可用

时间:2019-05-10 05:20:23

标签: python django django-authentication

我正在使用带有内置和自定义身份验证后端的自定义用户模型。用户名密码登录的默认密码和基于uid的登录密码的自定义密码登录工作正常,但模板中没有'user'(超级用户除外)。last_login也未在数据库中更新。这是我的代码

backend.py

from support.models import CustomUser

class UsernameIdModelBackend(object):
    def authenticate(self, request, uid=None):
        try:
            user= CustomUser.objects.get(uid=uid)
            return user
        except CustomUser.DoesNotExist:
            return None

    def get_user(self, user_id):
        try:
            return CustomUser.objects.get(pk=user_id)
        except CustomUser.DoesNotExist:
            return None

models.py

from django.db import models

# Create your models here.
from django.contrib.auth.models import AbstractUser

class CustomUser(AbstractUser):
    uid = models.CharField(max_length=50)

我哪里出错了。

编辑:

我正在使用if.user_is_authenticated在“用户”之前。删除if条件后,我看到的是AnonymousUser。

0 个答案:

没有答案