我在解决这个问题时遇到了一些麻烦,我为自己做了这件事。
我有这两个客户模型,有一些相似和不同的领域。我希望将这两个中的任何一个作为ForeignKey分配给我的projectclass中的字段。
这个想法是,当用户创建项目时,用户可以从所有客户中进行选择,并从私人和公司客户分配该特定字段,但不必事先在任何地方指定它是什么类型的客户。 / p>
私人客户
class PrivateCustomer(models.Model):
.. fields
公司客户
class CompanyCustomer(models.Model):
...
项目
class Project(models.Model):
customer = model.ForeignKey(PrivateCustomer,CompanyCustomer)
我是否可以动态地为特定字段连接两个实例,或者我应该放弃两个客户类之间的分离并通过UI输入处理它?</ p>
答案 0 :(得分:0)
如果两个字段的条件 null = True
class Project(models.Model):
privateCustomer = models.ForeignKey(PrivateCustomer, null = True)
companyCustomer = models.ForeignKey(CompanyCustomer , null = True)
然后从您的观点中,您可以轻松处理它们。