【问题标题】:Loop interface, depending on a called variable (Flask) [duplicate]循环接口,取决于被调用的变量(Flask)[重复]
【发布时间】:2019-11-25 12:35:16
【问题描述】:

我在开发需要使用 while 语句的烧瓶代码应用程序时遇到问题。根据这段代码,我想根据“x”和“i”值重复返回。该应用程序运行正确,但它只返回第一个值(我相信不会返回到 while 语句,因为“i”没有改变它的值)。代码如下:

from flask import Flask


app = Flask(__name__) #create the Flask app
app.secret_key = "hello"

@app.route('/begin') #allow both GET and POST requests
def form():
    x = 4
    i = 1

    while i <= x:

        return '''The value is : '''+str(i)+'''\n'''
        i += 1

    else:
        return '''done.'''

    pass

if __name__ == '__main__':
  app.config['SESSION_TYPE'] = 'filesystem'
  app.run(debug=True, port=5000)

【问题讨论】:

    标签: python flask logic


    【解决方案1】:

    尝试以下方法:

    @app.route('/begin')
    def form():
        x = 4
        i = 1
        rv = ''
        while i <= x:
    
            rv = rv + '''The value is : '''+str(i)+'''\n'''
            i += 1
    
        return rv + '''done.'''
    

    点击返回语句后,函数会在该点停止。此外,您不需要在一段时间后使用 else 语句,也不需要 pass 命令。

    另外,如果你确实想要允许 post 和 get 请求,你需要做以下事情:

    @app.route('/begin', methods=['get', 'post'])
    

    默认情况下,只允许获取请求。

    【讨论】:

    • 非常感谢!你解决了我的问题!
    猜你喜欢
    • 2014-01-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-04-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多