我已经阅读了一些关于 Django 中其他模型的 User 模型继承的文章,但我希望用户拥有一个特定的父用户,即 User 模型继承自身。
我不确定如何执行此操作,因为我肯定必须为 User 编辑 django.auth.contrib 模型,不是吗?
提前感谢您的任何提示。
我已经阅读了一些关于 Django 中其他模型的 User 模型继承的文章,但我希望用户拥有一个特定的父用户,即 User 模型继承自身。
我不确定如何执行此操作,因为我肯定必须为 User 编辑 django.auth.contrib 模型,不是吗?
提前感谢您的任何提示。
首先,不要在 Django 中编辑源代码。这是一个很大的错误,它会让你的代码难以维护——无论你想做什么,你真的不想改变 Django 源代码。
我不完全清楚您在问什么,但听起来您可能需要创建一个新模型,该模型继承自模型上的 selfUser
并添加一个ManyToMany
字段。
from django.contrib.auth.models import User
class ExtendedUser(User):
parent = models.ManyToManyField("self", symmetrical=False)
您的新模型现在将包含 DjangoUser
类的所有字段和方法以及您的额外parent
字段。任何特定ExtendedUser
对象的父字段都将引用另一个ExtendedUser
对象。
正如我所说,我正在猜测您正在尝试做什么(如果我做对了,那么您可能会发现对模型继承和类继承进行一些阅读会有所帮助-也许寻找一些关于这个主题的教程)