zoukankan      html  css  js  c++  java
  • 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的项目工程

  • 相关阅读:
    【原】从/dev/null重新打开标准输出
    Go 接口转换的一个例子
    关于软件编译安装的出错处理
    【原】GO 语言常见错误
    HP平台由于变量声明冲突导致程序退出时的core
    动态链接库加载出错:cannot restore segment prot after reloc: Permission denied
    Windows VC++常见问题汇总
    .net:System.Web.Mail vs System.Net.Mail应该用哪个
    网络管理的功能
    Hello World! — 用 Groovy 编写的 Java 程序
  • 原文地址:https://www.cnblogs.com/ppzhang/p/11753180.html
Copyright © 2011-2022 走看看