我有几个相关的模型。在django admin中,我想创建Appeal
。在
从模型中可以看出,我需要从Assignment
列表中进行选择,但在我的例子中,它通常需要从头开始创建。如果我单击“+”Django admin将提供此选项
然后,在Assigment
中,我需要选择ClientProfile
,但在大多数情况下,我需要再次创建它,这意味着我将单击“+”
但从我的模型中可以看出,ClientProfile指的是用户,而且更多的时候,它还需要重新创建,所以再次按“+”
在这种情况下最可怕的是用户引用地址模型。在
问题是,有没有可能做一些事情,使你不必按3-5次键“+”?每次按的时候都有开场白,不太方便。在
我在考虑表单或模型本身的继承,创建几个抽象模型,我还考虑了WizardView,我无法将其集成到Django管理中。在
我很困惑,不知道该怎么做。在
问题是我错误地构建了模型架构? 我不想说这是真的,我喜欢这些模型之间的联系。在
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)
...
可以在Django-admin中向相关模型添加内联,这可以从documentation读取。但是Django管理并不总是可靠的,因此为了满足您的需求,最好有自己设计的管理面板。在
相关问题 更多 >
编程相关推荐