gpt4 book ai didi

python - Django:对多个模型字段的约束

转载 作者:太空宇宙 更新时间:2023-11-03 13:52:01 25 4
gpt4 key购买 nike

示例:

class Author(models.Model):
first_name = models.CharField()
last_name = models.CharField()

def _get_full_name(self):
return '{0} {1}'.format(self.first_name, self.last_name)

full_name = property(_get_full_name)

对全名施加唯一约束的推荐方法是什么?正在考虑覆盖保存,但也许有更好的解决方案?

最佳答案

看看 Meta 类选项 unique_together

你可以这样做:

class Author(models.Model):
first_name = models.CharField()
last_name = models.CharField()

def _get_full_name(self):
return '{0} {1}'.format(self.first_name, self.last_name)

full_name = property(_get_full_name)

class Meta:
unique_together = ("first_name", "last_name")

优点是,这是通过适当的 UNIQUE SQL 语句在数据库级别强制执行的。

关于python - Django:对多个模型字段的约束,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5993898/

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