• flask:蓝图--blueprint


    一、蓝图

      1、什么是蓝图?(WHAT)

        1)蓝图就是模块化处理的类

        2)用于实现单个应用的视图、模板、静态文件的集合

        总结:蓝图就是一个存储操作路由映射方法的容器,主要用来实现客户端请求和URL相互关联的功能

      2、为什么使用蓝图?(WHY ,  WHERE)

        1)我们所有的视图函数都写在了一个文件当中,当我们的业务越来复杂的时候。视图函数也会变得越来越多,导致阅读不方便,维护起来困难等难题

        2)当我们以功能或模块将不同的代码进行分离,写入对应的蓝图里,可以加速我们管理项目的速度,解决上诉问题。

      3、如何使用蓝图?(HOW)

        文件目录

        

    from flask import Blueprint
    
    app1 = Blueprint('app01',__name__)
    from . import views
    app01/__init__.py
    from . import app1
    
    @app1.route('/index01')
    def show():
        return 'app01.hello'
    
    #下面可以写关于app1的其他函数
    app01/views.py
    from flask import Blueprint
    
    app2 = Blueprint('app02',__name__)
    from . import views
    app02/__init__.py
    from . import app2
    
    @app2.route('/index02')
    def show():
        return 'app02.hello'
    
    #下面继续关于app02的其他视图函数
    app02/views.py
    from flask import Flask
    from app01 import app1
    from app02 import app2
    
    app = Flask(__name__)
    
    app.register_blueprint(app1)
    #url_prefix:指定域名前缀
    app.register_blueprint(app2,url_prefix='/app02')  
    app.register_blueprint(app1,url_prefix='/app03')
    app.register_blueprint(app2,url_prefix='/app04')
    
    
    if __name__=='__main__':
      app.run()
    
    #http://127.0.0.1:5000/index01            app01.hello
    #http://127.0.0.1:5000/app02/index02        app02.hello
    #http://127.0.0.1:5000/app03/index01        app01.hello
    #http://127.0.0.1:5000/app04/index02        app02.hello
    test_blueprint.py

    二、使用蓝图创建一个类django的项目工程

  • 相关阅读:
    gvim小操作
    gvim2笔记
    用JavaScript实现MD5,SHA1加密
    MYSQL性能优化(转)
    开源了,开放我的仿ext控件集
    个人js作品集,仿ext风格(改)
    sql查询 注意事项
    共轭矩阵
    wchar 转 int
    对象不能从 DBNull 转换为其他类型
  • 原文地址:https://www.cnblogs.com/ppzhang/p/11753180.html
Copyright © 2020-2023  润新知