Python 不允许用户为对象中的字段输入相同的值
我有这个密码 **models.py**Python 不允许用户为对象中的字段输入相同的值,python,django,forms,django-views,Python,Django,Forms,Django Views,我有这个密码 **models.py** Class Collection(models.Model): user = ForeignKey(User) title = Charfield(max_length=250) order = IntegerField() 我想允许用户添加集合对象。但他们必须为每个对象的顺序输入不同的数字。例如:1,2,3,4,5,6,7 限制在1-10之间 我知道我可以为一个字段设置一个唯一的值。但是,我希望允许所有用户在订单字段中输入1-
Class Collection(models.Model):
user = ForeignKey(User)
title = Charfield(max_length=250)
order = IntegerField()
我想允许用户添加集合对象。但他们必须为每个对象的顺序输入不同的数字。例如:1,2,3,4,5,6,7
限制在1-10之间
我知道我可以为一个字段设置一个唯一的值。但是,我希望允许所有用户在订单字段中输入1-10
知道如何处理吗?您可以尝试为订单字段添加Django内置范围验证器1-10,然后在两个字段User Order上添加唯一约束
from django.db import models
from django.core.validators import MaxValueValidator, MinValueValidator
Class Collection(models.Model):
user = ForeignKey(User)
title = Charfield(max_length=250)
order = IntegerField(validators=[MinValueValidator(1), MaxValueValidator(10])
class Meta:
unique_together = ('user', 'order',)
哇,完全忘记了独特的东西。谢谢你。@ Jangguy如果答案是有用的,你可以考虑接受它。它帮助了很多东西,我非常感谢。