如何将字段添加到现有模型[重复]
Posted
技术标签:
【中文标题】如何将字段添加到现有模型[重复]【英文标题】:How to add a field to an existing model [duplicate] 【发布时间】:2021-04-05 21:45:03 【问题描述】:我想扩展和覆盖 User 模型中存在的字段,这些字段位于“django.contrib.auth.models”中(该模型已创建)。我首先尝试在 User 模型 和 Client 模型之间创建 外键 和 一对一关系 (我在其中添加了额外的字段),但我认为这不是一个好习惯。如何在 User 模型中直接添加和覆盖字段,而不必创建另一个类模型来扩展它。
from django.contrib.auth.models import User
class Clients(models.Model):
user = models.ForeignKey(User, on_delete=models.CASCADE)
#client = models.OneToOneField(User, on_delete=models.CASCADE)
cell = models.PositiveIntegerField (blank=False)
address = models.CharField(default = "Sandton, JHB", blank = False, max_length=132)
【问题讨论】:
【参考方案1】:from django.contrib.auth.models import AbstractUser
class CustomUser(AbstractUser):
pass
现在在您的 settings.py 文件中,添加以下行
AUTH_USER_MODEL = "module.file.CustomUSer"
【讨论】:
以上是关于如何将字段添加到现有模型[重复]的主要内容,如果未能解决你的问题,请参考以下文章
将字段添加到 Django 的现有数据库(版本 < 1.7)