web2py 表单处理

1 投票
1 回答
1998 浏览
提问于 2025-04-17 11:17

我最近下载了web2py,并开始阅读书中提供的示例。在书的概述部分的回发(postbacks)部分,有一个例子是这样的:

def first():
    form = FORM(INPUT(_name='visitor_name', requires=IS_NOT_EMPTY()),
              INPUT(_type='submit'))
    if form.process().accepted:
        session.visitor_name = form.vars.visitor_name
        redirect(URL('second'))
    return dict(form=form)

运行这个代码时出现了错误信息: "('FORM'对象没有'process'这个属性)"

我对form变量使用了dir()命令,但没有看到有“process”这个方法。请问这个方法是被从web2py中移除了,还是我漏掉了什么?

1 个回答

2

你可能在使用一个旧版本的web2py。

.process()是最近更新中新增的方法。

你现在用的是哪个版本呢?

你可以使用

if form.accepts(request, session):
    ....

撰写回答