Flask中不同文件中的独立路由
Separate routes in different files in Flask
我想将我的 /api 端点与另一个文件中的其他端点分开。
假设我有这两个文件:
app.py⤵
from flask import Flask
from routes.api_routes improt api
app = Flask(__name__)
app = app.register_blueprint(api)
app.route("/")
def index():
return "This is Index"
app.route("/about")
def about():
return "About page"
api_routes.py⤵
from flask import Blueprint
api = Blueprint('api', __name__)
@api.route('/users')
def users():
return getUsers()
@api.route('/posts')
def posts():
return getPosts()
假设我想访问 /api/users 和 /api/posts 但我不想写api_routes.py
上的所有端点之前的前缀“/api”
我怎样才能像在 Express.JS 上那样自动添加前缀?
app.use("/api", apiRoute);
我想在文件的开头添加一个 PREFIX 常量并在其后附加端点的其余部分:
PREFIX = "/api"
...
@api.route(PREFIX+'/users')
您可以在注册蓝图时设置前缀,如下所示:
app = app.register_blueprint(api, url_prefix='api')
我想将我的 /api 端点与另一个文件中的其他端点分开。
假设我有这两个文件:
app.py⤵
from flask import Flask
from routes.api_routes improt api
app = Flask(__name__)
app = app.register_blueprint(api)
app.route("/")
def index():
return "This is Index"
app.route("/about")
def about():
return "About page"
api_routes.py⤵
from flask import Blueprint
api = Blueprint('api', __name__)
@api.route('/users')
def users():
return getUsers()
@api.route('/posts')
def posts():
return getPosts()
假设我想访问 /api/users 和 /api/posts 但我不想写api_routes.py
上的所有端点之前的前缀“/api”我怎样才能像在 Express.JS 上那样自动添加前缀?
app.use("/api", apiRoute);
我想在文件的开头添加一个 PREFIX 常量并在其后附加端点的其余部分:
PREFIX = "/api"
...
@api.route(PREFIX+'/users')
您可以在注册蓝图时设置前缀,如下所示:
app = app.register_blueprint(api, url_prefix='api')