适当减少手机使用,有助于视力保护... 新的一年祝您:身体健康,阖家欢乐!~~

python Flask Blueprint 详解,和基本使用

浏览量:815 作者:admin 类别:: 学习笔记 更新时间:2022-04-04 13:20:06

Blueprint概念

        简单来说,Blueprint 是一个存储操作方法的容器,这些操作在这个Blueprint 被注册到一个应用之后就可以被调用,Flask 可以通过Blueprint来组织URL以及处理请求。


Flask使用Blueprint让应用实现模块化,在Flask中,Blueprint具有如下属性:


    1、一个应用可以具有多个Blueprint

   2、 可以将一个Blueprint注册到任何一个未使用的URL下比如 “/”、“/sample”或者子域名

    3、在一个应用中,一个模块可以注册多次

    4、Blueprint可以单独具有自己的模板、静态文件或者其它的通用操作方法,它并不是必须要实现应用的视图和函数的

    5、在一个应用初始化时,就应该要注册需要使用的Blueprint

    但是一个Blueprint并不是一个完整的应用,它不能独立于应用运行,而必须要注册到某一个应用中。

————————————————

基本使用

1、创建一个蓝图对象


    admin=Blueprint('admin',__name__) 

    当然,咱还可以为蓝图单独指定一个模版文件文件夹、静态文件文件夹、静态文件的url前缀...

    admin = Blueprint('admin', __name__, template_folder='admin_templates',static_folder='admin_static', static_url_path='/admin_static')

2、在这个蓝图对象上进行操作:

        注册路由、指定静态文件夹、注册模版过滤器


@admin.route('/')

def admin_index():

    return 'admin_index content'


3、在应用对象上注册这个蓝图对象: 


    app.register_blueprint(admin,url_prefix='/admin')

url_prefix指定,访问前缀,如下访问蓝图下的admin_index视图,则访问 url/admin


通常,我们把蓝图放在基它文件中,在注册蓝图之前还需要导入一下自己定义的蓝图模块

    form models.admin import  *


当然,你在哪里注册取决于,项目规划,有在模块内__init__.py 中注册的,也有在app.py或main.py中注册的。


    



关于博主
北京南城网络及弱电【张工】为您提供:
校园网、楼宇、村镇、园区,光纤网络覆盖,无线覆盖 华为|H3c|锐捷|爱快|panabit等品牌,路由、交换机、AC、AP 无源光网络(PON)设备,布署、调试、维运,等服务...
应急/临时光纤熔接...[藤仓22S]
博文为学习python所写:内容摘自网络、学习笔记、记事备忘。
QQ:872876353,欢迎交流学习、加Q注明来意。

诗文鉴赏

《满江红》· 岳飞
落星侵晓没,
残月半山低。
怒发冲冠,
凭栏处、潇潇雨歇。
抬望眼、仰天长啸,壮怀激烈。
三十功名尘与土,八千里路云和月。
莫等闲、白了少年头,
空悲切。
源于生活-记录日常
The site based on python 3 with flask...