如何使命令行参数对Flask路由可见?

时间:2016-12-21 13:53:55

标签: python flask

我正在使用Flask构建一个工具来在浏览器中本地查看数据。我想将包含数据的目录作为命令行参数传递,然后将其传递给相应的路由函数进行渲染。

这就是我想要的,但有全局变量:

dataDir = None

def initializeData(pathname):
    global dataDir
    dataDir = pathname

@app.route('/')
def home():
    # Use dataDir as desired

if __name__ == '__main__':
    initializeData(sys.argv[1])
    app = Flask(__name__)
    app.run()

是否有更好的方法在命令行和我的路由之间进行通信?

1 个答案:

答案 0 :(得分:13)

您的烧瓶应用具有var postUser = await context.Posts .Where(x => x.Id = postId) .Select(x => new { x.Id, UserId = x.User.Id }) .FirstOrDefaultAsync(); 属性。此外,此代码将失败并出现NameError。你想要这样的东西:

config