【发布时间】:2019-05-09 17:31:00
【问题描述】:
我有两个模型:
class University(models.Model):
name = models.CharField(max_length=50)
address = models.CharField(max_length=50, null=True, blank=True)
city = models.CharField(max_length=30, null=True, blank=True)
country = CountryField(null=True, blank=True)
created_at = models.DateTimeField(auto_now_add=True)
modified_at = models.DateTimeField(auto_now=True)
departments = models.ManyToManyField(Department)
class Department(models.Model):
name = models.CharField(max_length=50)
address = models.CharField(max_length=50, null=True, blank=True)
created_at = models.DateTimeField(auto_now_add=True)
modified_at = models.DateTimeField(auto_now=True)
我想 University 有很多 Departments ,反之亦然,效果很好。
但我也想为一所大学单独存储更多部门。
例如:
University1 有 Department1 和 Department2。
University2 有 Department1。
我希望这些部门为每所大学单独存储。现在,当我更新 Department1 时,当然每所拥有该学校的大学都会看到变化。我不想要那个。我想更新 Department1,但只更新 University1 记录。 University2 中的 Department1 不应更新。
我假设将through 选项与中间model 添加不会有帮助。最好的解决方案是什么?
【问题讨论】:
标签: python django many-to-many