我可以在Django模型中使外键字段可选

时间:2011-07-08 04:28:41

标签: django django-models

我有这段代码

subject      = models.ForeignKey(subjects)
location     = models.ForeignKey(location)
publisher    =  models.ForeignKey(publisher)

我不总是有三种价值观的书。 所以有时如果我不知道主题或位置,或出版商。然后我想让它们空着

但如果我有,那么我需要选择框来选择。有可能吗

2 个答案:

答案 0 :(得分:163)

当然,只需为要保持可选的每个字段添加blank=True, null=True,例如

subject = models.ForeignKey(subjects, blank=True, null=True)

答案 1 :(得分:1)

on_delete 参数是必要的,如果你这样做会更好。

subject = models.ForeignKey(subjects, on_delete=models.SET_NULL, blank=True, null=True)