gpt4 book ai didi

python - web.py中的表单验证器,帮助查找错误

转载 作者:行者123 更新时间:2023-12-01 06:00:38 25 4
gpt4 key购买 nike

我的验证器似乎有错误。即使当我在表单中输入 -1 时,我仍然得到返回的值,而不是 blaat。也许有人看到我的错误?

class test:
def __init__(self):
self.render = web.template.render('templates/')
self.myForm = web.form.Form(
web.form.Textbox('minutes', id='minutes'),
validators = [form.Validator("Minutes not correct",
lambda i: i.minutes > 0)]
)

def GET(self):
return self.render.addLog(self.myForm)

def POST(self):
webinput = web.input()
if self.myForm.validates():
return webinput.date1+webinput.minutes
else:
return "blaat"

最佳答案

i.months 不会自动转换为 int,并且字符串比较大于整数:

>>> '-1' > 0
True

使用int(i.munites)

顺便说一句,表单范围的验证器用于相互比较表单字段,例如检查输入的密码是否匹配。要检查任何给定字段是否正确,请使用单字段验证器:

self.myForm = web.form.Form(
web.form.Textbox('minutes',
web.form.Validator("Minutes not correct", lambda x: int(x) > 0)),
)

关于python - web.py中的表单验证器,帮助查找错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10651673/

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