相关疑难解决方法(0)

在运行烧瓶应用程序后调用函数的正确方法是什么?

我对如何做一些我认为非常简单的事情感到有些困惑.我有一个简单的应用程序使用Flask.它看起来像这样:

from flask import Flask

app = Flask(__name__)

def _run_on_start(a_string):
    print "doing something important with %s" % a_string

@app.route('/')
def root():
    return 'hello world'

if __name__ == "__main__":
    if len(sys.argv) < 2:
        raise Exception("Must provide domain for application execution.")
    else:
        DOM = sys.argv[1]
        _run_on_start("%s" % DOM)
        app.run(debug=True)
Run Code Online (Sandbox Code Playgroud)

我发现我的终端输出的是打印语句,_run_on_start而不是其他常用的Flask app调试代码.如果我在app.run之前删除了调用,则输出正常.此外,我发现_run_on_start在启动时重复输出两次,但我不知道它是否是一些奇怪的输出,或者该函数实际上被调用了两次.

我假设这不是在你打电话之前添加函数调用的正确方法app.run.我查看了Flask文档并发现了可以使用的各种装饰器的提及,它允许您在某些请求之前/之后执行一个函数,但我想在运行应用服务器时执行调用.

此外,我意识到,如果我从另一个模块调用此模块,即,当__name__ != "__main__"我不接听我的电话时_run_on_start.

这里有什么正确的方法?在这两种情况下,当我从CL和另一个模块开始?

python web-frameworks werkzeug flask

31
推荐指数
2
解决办法
2万
查看次数

使用Flask运行时启动功能

我有一个烧瓶应用

@app.route("/hello")
def generater():
     return "hello world

if __name__ == '__main__':
app.run()
Run Code Online (Sandbox Code Playgroud)

我的应用程序运行正常,但是我想知道在编译代码时如何向http://127.0.0.1:5000/hello发出请求

python flask

1
推荐指数
1
解决办法
2927
查看次数

标签 统计

flask ×2

python ×2

web-frameworks ×1

werkzeug ×1