Django перезаписывает объекты вместо того, чтобы создавать новые
У меня есть несколько моделей - Model1, Model2, Model3 и Model4 - определенных в файле models.py:
class Model1(models.Model):
field1 = db.CharField(max_length=10)
class Model2(models.Model):
field2 = db.CharField(max_length=10)
class Model3(models.Model):
field3 = db.CharField(max_length=10)
class Model4(models.Model):
m1 = db.ForeignKey('application.Model1', on_delete=models.CASCADE)
m2 = db.ForeignKey('application.Model2', on_delete=models.CASCADE)
m3 = db.ForeignKey('application.Model3', on_delete=models.CASCADE)
class Meta:
unique_together = (('m1', 'm2', 'm3'),)
Когда я хочу создать новую Model4 используя объекты Model1, Model2, Model3 из базы данных Django переопределяет Model4 содержит те же ключи Model1 и Model3, но Model2 полностью отличается. например:
У меня есть несколько моделей4:
при pk = 1: m1 = 1, m2 = 1, m3 = 1
при pk = 2: m1 = 1, m2 = 2, m3 = 2
Когда я хочу добавить новую Модель4 со значениями:
m1 = 1, m2 = 10, m3 = 1
Затем Django не создает новый (однако новый первичный ключ создается), а переопределяет Model4 с pk = 1. Что здесь происходит? Кто-нибудь может мне помочь?
Заранее большое спасибо :D.