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