繁体   English   中英

如何创建自己的模型,可以像 django 中的管理员用户一样进行身份验证

[英]How to create own model that can authenticate like admin user in django

我创建了自己的模型用户,但无法像管理员用户一样对其进行身份验证

# myapss/models.py
from django.db import models
from django.contrib.auth.hashers import make_password, check_password
from django.db.models.manager import Manager

class MyOwnManager(Manager):
    ...
class MyOwnUser(models.Model):
    username = models.CharField(max_length=50, unique=True)
    password = models.CharField(max_length=255)

    ...

    objects = MyOwnManager()

我想在不使用 AbstractUser 或 AbstractBaseUser 的情况下验证此模型

#myapps/views.py
from .models import MyOwnUser

def login(request):
    # Authentication
  1. 为了在 Django 中创建自定义用户模型,您需要遵循某些步骤。 请查看以下文档并找到有关开发自定义用户模型必须执行的操作的详细说明:

https://docs.djangoproject.com/en/3.2/topics/auth/customizing/#substituting-a-custom-user-model

  1. 我还建议您查看本教程:

https://testdriven.io/blog/django-custom-user-model/

  1. 您正在尝试从头开始构建用户模式,它非常复杂和冗余,因为实际上您最终将编写自己的代码来重现 AbstractBaseUser 类功能。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM