新闻资讯

质量为本、客户为根、勇于拼搏、务实创新

< 返回新闻资讯列表

Django中如何创建自定义的用户模型,django中如何创建app

发布时间:2024-05-08 18:19:55

Django中如何创建自定义的用户模型

在Django中创建自定义用户模型的步骤以下:

  1. 创建一个新的利用(app)还是在已有的利用中创建一个新的模型文件,例如models.py。

  2. 在新的模型文件中导入Django自带的AbstractBaseUser和PermissionsMixin模块,并创建一个新的用户模型类,继承AbstractBaseUser和PermissionsMixin。示例代码以下:

from django.contrib.auth.models import AbstractBaseUser, PermissionsMixin
from django.db import models

class CustomUser(AbstractBaseUser, PermissionsMixin):
    email = models.EmailField(unique=True)
    username = models.CharField(max_length=30, unique=True)
    is_active = models.BooleanField(default=True)
    is_staff = models.BooleanField(default=False)
    
    USERNAME_FIELD = 'email'
    REQUIRED_FIELDS = ['username']
    
    def __str__(self):
        return self.email
  1. 在新的用户模型类中定义一些必要的字段,如email、username等,同时设置USERNAME_FIELD和REQUIRED_FIELDS属性,分别指定用作登录凭证的字段和必填字段。

  2. 在settings.py文件中设置新的用户模型类为默许的用户模型类。示例代码以下:

AUTH_USER_MODEL = 'your_app.CustomUser'
  1. 运行以下命令来创建数据库迁移并利用该迁移:
python manage.py makemigrations
python manage.py migrate

通过以上步骤,你就成功地创建了一个自定义的用户模型类,并且将其设置为默许的用户模型类。现在你可以在项目中使用这个自定义的用户模型了。