flask项目目录结构

flask项目目录结构

一、蓝图使用

from flask import Blueprint
from flask import render_template,url_for
from flask import request

account = Blueprint('acc', __name__)

@account.route('/login.html', methods=['GET', "POST"])
def login():
    # print(url_for("login")) 直接login名字会出错,只能使用acc.login就不会出错
    print(url_for("acc.login"))
    return render_template('login.html')

# 在__init__.py中注册蓝图
app.register_blueprint(admin, url_prefix='/login')

# 请求链接为
http://127.0.0.1:5000/login/login.html

总结:

  1. 使用导入 from flask import Blueprint
  2. 创建对象中,变量名用于注册相当于@app.route, 只不过将app换成了蓝图对象,和注册蓝图两个作用
  3. 其中 Blueprint('acc', __name__) ,第一个参数acc为用户url_for反向解析,如果直接写函数名字会报错

1577614266047

二、简单项目结构

pro_flask  # 项目名称
    └─pro_flask # 项目名称
      |  ├─statics # 静态文件
      |  ├─templates # html
      |  ├─views  # 具体功能实现,请求拦截
      |  |__init__.py # 注册功能函数实现,采用蓝图
      ├───run.py # 项目启动
        
       

1577614670748

三、多个应用项目创建

pro_flask
    └─pro_flask
      │  ├─admin # 管理员功能
      │  │  ├─static
      │  │  │
      │  │  └─templates
      │  ├───__init__.py # 注册蓝图
      │  ├─── views.py # 具体url请求功能
      │  
      │  └─web # web功能
      │    │  ├─static
      │    │ └─templates
      │    ├───__init__.py # 注册蓝图
      │    ├─── views.py # 具体url请求功能
      ├───__init__.py # 注册多个功能蓝图
      ├─────── run.py  # 启动文件

1577615558078

原文地址:https://www.cnblogs.com/randysun/p/15518238.html