我如何在Flask中使用Flask.route

问题描述 投票:0回答:2

目录结构的简要介绍如下:enter image description here

__init__.py包含应用程序工厂。

page.py

from app import app


# a simple page that says hello
@app.route('/hello')
def hello():
    return 'Hello, World!'

app.py

from flaskr import create_app

app = create_app()


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

当我启动服务器并转到'/ hello'时,它显示404。有什么问题吗?

python flask
2个回答
0
投票

您构造代码的方式不正确。这就是您无法访问“ / hello” API的原因。

假设您运行app.py文件。在这种情况下,您没有导入page.py对吗?那么,app.py如何知道page.py中定义了一条路由?

或者,假设您运行page.py。在这种情况下,当您执行“从应用程序导入应用程序”时,不会执行主定义。此处也将显示路由,但该应用程序将不会运行,因此您将无法访问您的API。

最简单的解决方案是将app.py和page.py的内容合并到一个文件中。


0
投票

这是应该运行的简短解决方案。

page.py

from flaskr import app

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

__ index __。py

from flask import Flask

app = Flask(__name__)

from flaskr import page

app.py

from flaskr import app

要运行它,您只需要在命令行上定义一个环境变量,就像这样:

export FLASK_APP=microblog.py

然后使用]运行它>

flask run
© www.soinside.com 2019 - 2024. All rights reserved.