gpt4 book ai didi

django - unique_together 外键对象属性

转载 作者:行者123 更新时间:2023-12-03 10:47:20 28 4
gpt4 key购买 nike

我有两个模型:Common 和 ARecord。 ARecord 与 Common 有外键关系。我想通过 ARecord 和 Common 的项目组合来确保 ARecord 是独一无二的。

class Common(models.Model):
NAIC_number = models.CharField(max_length=5)
file_location_state = models.CharField(max_length=2)
file_location_code = models.CharField(max_length=2)

class ARecord(models.Model):
common = models.ForeignKey(Common)
coverage_code = models.CharField(max_length=6)
record_type = models.CharField(max_length=1)

class Meta:
unique_together = ('coverage_code', 'common__NAIC_number')

但是,当我尝试通过通常的双下划线访问外键对象属性时,出现模型验证错误。
`arecord.arecord: "unique_together" refers to common__NAIC_number, a field that doesn't exist. Check your syntax.`

这似乎应该是可能的,并且提出了一个略有不同的问题,表明 it is ,但也许我错过了一些明显的东西?

最佳答案

正如 Manoj 暗示的那样,你不能用 unique_together 做到这一点。 ,因为这是一个数据库约束,而你想要的那种事情不能用数据库约束来完成。

相反,您希望以编程方式执行此操作,可能通过 model validation ,这将确保不会创建违反约束的实例。

关于django - unique_together 外键对象属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3611392/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com