2017-02-23 86 views
0
from django.db import models 
from django.core.validators import MaxValueValidator, MinValueValidator 
class Match(models.Model): 
      . 
      . 
      . 
      overs = models.IntegerField(validators=[MinValueValidator(1), MaxValueValidator(100)]) 

我试过使用PositiveIntegerField,但我相信你不能通过Django设置最大值 - 我不确定。如何为整数字段Django设置默认值,最大值和最小值?

+1

“我尝试过使用PositiveIntegerField”。那么你发现了什么?为什么你认为无法设置最大值?你读过[验证器](https://docs.djangoproject.com/en/1.10/ref/validators/)文档吗?您发布的代码是什么? –

+0

我很抱歉,但我不知道你的疑问到底是什么。请阅读[如何提问](http://stackoverflow.com/help/how-to-ask)指南。还要添加你尝试过的。相信我这个问题已经在SO上多次提出过了。 –

回答

0

PositiveIntegerField确保不接受小于0的整数。您的验证器似乎正确处理最小值和最大值。所有你缺少的是默认值default。所以像

overs = models.PositiveIntegerField(default=10, validators=[MinValueValidator(1), MaxValueValidator(100)]) 
相关问题