阅读(959) (18)

Flask 我的第一个蓝图

2021-06-30 15:49:57 更新

这看起来像是一个非常基本的蓝图。在这个案例中,我们想要实现一个简单渲染静态 模板的蓝图:

from flask import Blueprint, render_template, abort
from jinja2 import TemplateNotFound

simple_page = Blueprint('simple_page', __name__,
                        template_folder='templates')

@simple_page.route('/', defaults={'page': 'index'})
@simple_page.route('/<page>')
def show(page):
    try:
        return render_template('pages/%s.html' % page)
    except TemplateNotFound:
        abort(404)

当我们使用 ​@simple_page.route​ 装饰器绑定函数时,在蓝图之后被注册时它 会记录把 show 函数注册到应用上的意图。此外,它会给函数的端点加上 由 ​Blueprint​ 的构造函数中给出的蓝图的名称作为前缀(在此例 中是 ​simple_page​ )。