我试图向Django模型添加第二个ForeignKey关系,该模型与尚未创建的模型有关。
class Forms2012(models.Model):
"""
Employer forms for the 2012-13 tax year
"""
employer = models.ForeignKey('Employer', blank=True, null=True)
# employee model is yet to be implemented
employee = models.ForeignKey('Employee', blank=True, null=True)
name = models.CharField(
max_length=50,
choices=constants.FORM_CHOICES)
description = models.CharField(max_length=255)
datemodified = models.DateTimeField()
正如您所料,这会导致not installed or is abstract
错误。但是我被告知应该可以验证这一点,因为该密钥是可选的。
有人可以解释一下这是否可能,我已经将标志blank=True, null=True
添加到FK但模型验证失败了所以我认为我正在打一场失败的战斗。
答案 0 :(得分:1)
为什么不制作(临时)假人模型?
答案 1 :(得分:0)
我建议你实现“stub”Employee
模型,例如
class Employee(models.Model):
pass
如果您正在使用数据库迁移(例如南方),那么稍后“填写”Employee类应该是一件简单的事情。
但是,如果您想要解决问题的相关“解决方案”,您可以查看this question中接受的答案。问题的作者&答案承认它很难看(即使它有效)。 “存根”解决方案更好。