FLASK Blueprint

336 阅读1分钟

Blueprint

如果没有Blueprint,所有的route都必须写到main.py文件内。但是借助Blueprint,可以将main.py中的url拆分成多个模块单独处理,main.py中只留下几个最简单的route

创建一个蓝图包bp,并在bp/__init__.py文件中创建蓝图对象

import flask

# 需要注册到任何一个未使用的URL下,比如"/sample"子域名
bp = flask.Blueprint("bp", __name__)

import bp.view

在该包下创建views.py文件

import bp

@bp.bp.route('/')
def hello_world():
    return 'Hello, World!'

@bp.bp.route('/get_id/<id>/')
def get_id(id):
    return 'id: {}'.format(id)

在main.py中注册Blueprint

app.register_blueprint(blueprint=bp.bp, url_prefix="/bp")