我有几个相关的模型。在django admin中,我想创建Appeal
。
从模型中可以看出,我需要从Assignment
列表中进行选择,但在我的情况下,通常需要从头开始创建。如果我点击" +"
然后,在Assigment
内,我需要选择ClientProfile
,但在大多数情况下,我需要再次创建它,这意味着我会点击&#34 ; +"
但是从我的模型中可以看出,ClientProfile指的是User,更常见的是,它还需要重新创建,因此再次按下" +"
在这种情况下最可怕的是用户指的是地址模型。
问题是,是否可以做一些事情,这样你就不必按3-5次" +"?每次印刷都伴随着开场流行,并不是很方便。
我正在思考表单或模型本身的继承,创建几个抽象模型,我也考虑过WizardView,我无法将其集成到Django-admin中。
我很困惑,不明白该怎么做。
问题是我错误地构建了模型架构? 我不会说这是如此,我喜欢模型的相关性。
class Appeal(Base):
...
assigment = models.ForeignKey(Assignment, null=True)
...
class Assignment(Base):
...
client = models.ForeignKey(ClientProfile, null=True)
...
address = models.ForeignKey(Address, null=True)
...
class ClientProfile(Base):
...
user = AutoOneToOneField(settings.AUTH_USER_MODEL, null=True)
...
@python_2_unicode_compatible
class User(AbstractUser):
...
phone_number = models.ManyToManyField(PhoneNumber)
...
address = models.ForeignKey(Address, null=True)
...
答案 0 :(得分:-1)
可以在Django admin中为相关模型添加内联,可以从documentation中读取。但是Django管理员并不总是可靠的,因此为了满足您的要求,最好有自己设计的管理面板。