在 Flask 中指定路由
Specify Routes in Flask
我正在使用 Flask 创建 Restful 网络服务。
从示例中我看到我们使用像
这样的注释
@app.route('/')
如果我有两个 类,我想知道如何使用它。我尝试将其移动到包内的另一个文件,但随后出现 404 错误。
Service.py
的内容
from flask import Flask
app = Flask(__name__)
@app.route('/')
def hello_world():
return 'Hello World!'
Flask.py
的内容
from flask import Flask
app = Flask(__name__)
if __name__ == '__main__':
app.run()
我只是想知道如何指定不同的路线 类。
不要在两个模块中都定义 app
。只在一个地方定义它并在其他地方导入它。在定义 app
的模块中,在 定义它之后导入其他模块 ,以避免循环导入。
Flask 项目的基本结构如下所示:
MyProject/
my_package/
__init__.py
service.py
run.py
MyProject/my_package/__init__.py
from flask import Flask
app = Flask(__name__)
from my_project import service
MyProject/my_package/service.py
from my_project import app
@app.route('/')
def hello_world():
return 'Hello, World!'
MyProject/run.py
from my_package import app
app.run('localhost', debug=True)
使用 MyProject
目录中的 python run.py
到带有开发服务器的 运行 应用程序。
您还有一些术语错误。他们被称为 "decorators",而不是 "annotations"。它们被称为 "modules",而不是 "classes"。此外,通常的做法是给文件小写名称。
我正在使用 Flask 创建 Restful 网络服务。 从示例中我看到我们使用像
这样的注释@app.route('/')
如果我有两个 类,我想知道如何使用它。我尝试将其移动到包内的另一个文件,但随后出现 404 错误。
Service.py
的内容from flask import Flask
app = Flask(__name__)
@app.route('/')
def hello_world():
return 'Hello World!'
Flask.py
的内容from flask import Flask
app = Flask(__name__)
if __name__ == '__main__':
app.run()
我只是想知道如何指定不同的路线 类。
不要在两个模块中都定义 app
。只在一个地方定义它并在其他地方导入它。在定义 app
的模块中,在 定义它之后导入其他模块 ,以避免循环导入。
Flask 项目的基本结构如下所示:
MyProject/
my_package/
__init__.py
service.py
run.py
MyProject/my_package/__init__.py
from flask import Flask
app = Flask(__name__)
from my_project import service
MyProject/my_package/service.py
from my_project import app
@app.route('/')
def hello_world():
return 'Hello, World!'
MyProject/run.py
from my_package import app
app.run('localhost', debug=True)
使用 MyProject
目录中的 python run.py
到带有开发服务器的 运行 应用程序。
您还有一些术语错误。他们被称为 "decorators",而不是 "annotations"。它们被称为 "modules",而不是 "classes"。此外,通常的做法是给文件小写名称。