[英]Django percentage form field
我想在Django中使用百分比表单字段。 基本上,在我的模型中,我有一个float字段。 使用模型表单时的默认值是验证其为数字的文本输入。 如果用户要输入40%,则必须输入0.4。 我想要的是他们可以输入的可选百分比符号。 因此,他们可以输入0.4或40%。
Django内置了类似的东西吗? 如果没有,为什么? 我希望这是经常使用的东西。 还是我告诉他们这是一个百分比字段,并强迫他们只填写40?
您可以轻松地创建自己的验证器
def valid_pct(value):
if value.endswith("%"):
return float(value[:-1])/100
else:
try:
return float(value)
except ValueError:
raise ValidationError(
_('%(value)s is not a valid pct'),
params={'value': value},
)
... models.py
class MyModel(models.Model):
pct = models.StringField(validators=[valid_pct])
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.