首页 > 解决方案 > 2种不同的django用户模型

问题描述

我有 2 种不同的 django 用户模型,一种用于客户端,一种用于管理员,原因是我不希望两种类型的用户混合在一个模型中。但是我在客户端用户登录时遇到问题,我无法在 View 中将他们的密码相互匹配,因为密码保存为哈希,但他们输入的密码与他们选择注册的密码相同。

def login_view(request):
    if request.method == "POST":
        email = request.POST['email']
        password = request.POST['password']
        try:
            user = CustomUsers.objects.get(email=email, password=password)
        except CustomUsers.DoesNotExist:
            user = None
        if user is not None:
            login(request, user)
            return redirect('/')
        else:
            return redirect('login')
    else:
        form = UserLoginForm
    return render(request, 'CustomUsers/login.html', {'form': form})

我尝试了很多方法,但我无法得到任何东西......任何解决方案......?还有另一个问题,我以后登录时在模板中隐藏注册表短语会不会有麻烦?或者也可以再次使用 {% if.is_authenticated %}。

标签: pythondjangodjango-models

解决方案


推荐阅读