Ошибка ограничения Django UNIQUE
django.db.utils.IntegrityError: UNIQUE constraint failed
, когда я использую ограничение уникальных вместе в моделях.
Как правильно его использовать?В то время как я ввожу данные для того же издателя, того же номера выпуска, но с другим номером копии, я получаю вышеуказанную ошибку.Это правильный способ реализовать это?
class Book(models.Model):
publisher = models.IntegerField()
issue = models.CharField(max_length=255)
class Meta:
unique_together = ("publisher", "issue")
def __str__(self):
return "%s-%r" % (self.publisher,self.issue)
class Version(models.Model):
book = models.ForeignKey(Book, on_delete = models.CASCADE)
number = models.CharField(max_length=255)
book_name = models.CharField(max_length=255)
cover = models.ImageField(null=True)
description = models.CharField(max_length=255)
class Meta:
unique_together = ("book", "number")
def __str__(self):
return "%s %s" % (self.number, self.book)
class Copy(models.Model):
user = models.ForeignKey(settings.AUTH_USER_MODEL, default=1, on_delete=models.CASCADE)
version = models.ForeignKey(Version, on_delete = models.CASCADE)
number = models.IntegerField()
book_id = models.AutoField(primary_key=True)
book_size = models.CharField(null=True, blank=True,max_length=255)
def __str__(self):
return "%r" % (self.book_id)
class Meta:
unique_together = ("version", "number")