如果您有多对多关系(related_name
,而不是through
)并且您尝试使用管理界面,则需要输入其中一个关系,即使它没有必须存在才能创建第一个条目。
我正在创建一个应用程序,它是一个活动组织者。想象一下,我们有Event
和Group
模型,与多对多关系绑定。
Django related_name
创建另一个表,其中包含其他两个表的索引
但我认为没有理由为这个额外的表填充。
如果我通过phpMyAdmin使用数据库,我可以创建一个Group
而不注册Event
,因为两者之间的连接只是通过一个单独的表,并且没有数据库值执行给定水平。
如何让管理界面实现呢? 如何在Django中使多对多字段可选?
答案 0 :(得分:282)
如果您希望能够在不需要的情况下指定ManyToMany关系,只需使用blank=True
:
class Group(models.Model):
...
events = models.ManyToManyField(Event, blank=True)