gpt4 book ai didi

python - Django 用户 ForeignKey 和唯一对象名称

转载 作者:太空宇宙 更新时间:2023-11-04 10:01:01 24 4
gpt4 key购买 nike

class User:
username = (unique=True)

class Object:
user = models.ForeignKey(settings.AUTH_USER_MODEL)
name = ()

如何让多个对象同名,但每个用户只能有一个唯一的对象名称。

例如:

user1 只能有一个唯一的对象名称“dog”,user2 也只能有一个唯一的对象名称“dog”,因此可以有多个同名“dog”的Object,但每个用户只能通过ForeignKey拥有一个名为“dog”的Object。如果 user1 尝试创建另一个名为“dog”的对象,则引发类似表单验证错误的错误。

最佳答案

您可以使用 unique_together添加数据库约束的选项。

class MyModel(models.Model):
user = models.ForeignKey(settings.AUTH_USER_MODEL)
name = models.CharField(max_length=30)

class Meta:
unique_together = ['user', 'name']

关于python - Django 用户 ForeignKey 和唯一对象名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43584194/

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