将python代码放在​​网上 - 与我的app.py脚本混淆

时间:2012-02-28 08:17:03

标签: python web.py

所以我正在进入将我的第一个python代码放在​​网上的过程中,我对某些事情有点模糊。当我们将app分配给web.application(urls, globals())时,究竟发生了什么?另外,行form = web.input(name="Nobody", greet=None)指的是我的另一个脚本hello_form中的两个输入表单,但它的用途是什么?我们在下一行调用form.greetform.name,但这些应该是根据用户输入创建的变量,(我们说name = "Nobody"?)。

import web

urls = (
    '/hello', 'Index'
)

app = web.application(urls, globals())

render = web.template.render('templates/', base="layout")

class Index(object):
    def GET(self):
        return render.hello_form()

    def POST(self):
        form = web.input(name="Nobody", greet=None)
        greeting = "%s, %s" % (form.greet, form.name)
        return render.index(greeting = greeting)

if __name__ == "__main__":
    app.run()

1 个答案:

答案 0 :(得分:1)

app = web.application(urls, globals())

创建一个名为app的变量,并将调用web.application()的结果存储在其中。换句话说,您创建一个Web应用程序对象,并将该对象存储在app

form = web.input(name="Nobody", greet=None)

此处为namegreet指定的值是默认值 - 即,如果请求中未提供用户指定的值,则使用这些值。