• Pyhton3框架Flask之蓝图Blueprint


            Blueprint是flask框架中进行多模块应用的编写方式之一,在使用flask框架进行编写项目的时候,可能会有许多个模块,如前台和后台再有手机版.....。如果把所有的模块都写在一个.py文件中,那么这个文件将非常的臃肿,极难维护,而且看也也不美观。所以flask框架就引入了Blueprint(蓝图)的概念。可以将一个.py文件分离到多个模块中。

          模块分离后的结构为

            此文件结构中manage.py为入口文件,包admin为后台,包home为前台,views.py文件为视图

            业务编写,定义各模块中的Blueprint

            admin模块 __inti__.py

    from flask import Blueprint
    
    admin=Blueprint('admin',__name__)  #定义蓝图对象
    
    import app.admin.views
    

      视图views.py

    from . import admin
    
    @admin.route('/')
    def index():
        return '后台在此'
    

      home模块 __init__.py

    from flask import Blueprint
    
    home=Blueprint('home',__name__)
    
    import app.home.views
    

      视图views.py

    from . import home
    
    @home.route('/')
    def index():
        return '我是前台'
    

      项目app下的配置文件__init__.py

    from flask import Flask
    
    app=Flask(__name__)
    #app.debug=True
    
    from app.home import home as home_blueprint     #引入蓝图对象
    from app.admin import admin as admin_blueprint
    
    app.register_blueprint(home_blueprint)
    app.register_blueprint(admin_blueprint,url_prefix='/admin')
    

      入口文件manage.py

    from app import app
    
    if __name__ == '__main__':
        app.run(debug=True)
        
        
    

      运行入口文件

    总结:

  • 相关阅读:
    array_map()与array_shift()搭配使用 PK array_column()函数
    Educational Codeforces Round 8 D. Magic Numbers
    hdu 1171 Big Event in HDU
    hdu 2844 poj 1742 Coins
    hdu 3591 The trouble of Xiaoqian
    hdu 2079 选课时间
    hdu 2191 珍惜现在,感恩生活 多重背包入门题
    hdu 5429 Geometric Progression 高精度浮点数(java版本)
    【BZOJ】1002: [FJOI2007]轮状病毒 递推+高精度
    hdu::1002 A + B Problem II
  • 原文地址:https://www.cnblogs.com/tngh/p/9564060.html
Copyright © 2020-2023  润新知