django - Django UNIQUE 约束
问题描述
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")
解决方案
推荐阅读
- wcf - 如何从 DynamicEndpoint 获取 WCF 服务地址
- sas - SAS选择记录(或列),其中值总和为特定数字
- excel - 带有#N/A 值的数据透视表?
- python - 我们如何在数组索引中使用“和”运算符?
- angular - 在 .net core Web api 中获取用户分析的最佳方法
- asp.net - 在 Devexpress 中的页面加载时执行的 Javascript 函数
- angular6 - 2 个文本字段映射到相同的 formcontrolname angular 2+
- elixir - 在ecto 3.0中选择合并
- c++ - 提升 ASIO 慢
- prolog - 通过给定条件定义奶奶序言