首页 > 解决方案 > 如何使用烧瓶从浏览器更新全局变量

问题描述

使用 Flask,如何从浏览器更改全局变量内容?那样...

var = 1
@app.route('/', methods= ['GET', 'POST'])
def home_page():
    return '''
        <input type="number" name="var" />
        <form action="/next_page" method="post">
            <input type="submit" value = "go to next page"/>
        </form>''''

return'''--- 之后的哪一行会为访问的每个页面更新 var?

标签: python-3.xflask

解决方案


在以下代码中,我将表单的操作更改为相同的视图,并在视图中检查请求方法是 GET 还是 POST。

@app.route('/', methods= ['GET', 'POST'])
def home_page():
    if request.method == 'GET':
        return '''
            <html>
            <head><title>Title</title></head>
            <body>
                <form action="/" method="post">
                    <input type="number" name="var" />
                    <input type="submit" value = "go to next page"/>
                </form>
            </body>
            </html>
            '''
    else:
        number = request.form.get('var')
        global var
        var = number
        print(var)
        return 'Done'

在您的代码中,您将输入放在表单之外,因此它不会与表单一起提交,所以我将它放在里面。在您使用所需的新var提交表单后,它将全局更改它,并确保我正在打印全局变量var


推荐阅读