flask-蓝图(Blueprint)

flask-蓝图(Blueprint)


  • flask蓝图的设计可以实现django类似的创建app的功能,蓝图可以让flask的项目更模块化,结构更加清晰,可以将相关的视图函数和配置放在同一个目录下,方便管理。
    • 主文件
      from flask import Flask
      from user.views import user_app
      import sys
      import os
      
      BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
      
      sys.path.insert(0, os.path.join(BASE_DIR, 'apps'))
      
      apps = [
          user_app,
      ]
      
      app = Flask(__name__)
      
      for each in apps:
          app.register_blueprint(each)
      
      if __name__ == '__main__':
          app.run()
    • app文件
      1 from flask import Blueprint
      2 
      3 user_app = Blueprint('user', __name__)
      4 
      5 
      6 @user_app.route('/user/login')
      7 def login():
      8     return 'login page'
    • 项目结构
    •  每个蓝图就是一个额外的app,蓝图需要在app.register_blueprint里面进行注册



猜你喜欢

转载自www.cnblogs.com/ivy-blogs/p/11538031.html