Flask系列04--Flask的蓝图
flask蓝图
一.蓝图
蓝图(Blueprint),类似于实现django中路由分发那种感觉, 可以把Blueprint理解为不能被run的Flask对象
Blueprint实例化时需要的参数

基本使用
from flask import Blueprint
# 把Blueprint理解为 不能被 Run 的 Flask 对象
bp = Blueprint("bp",__name__,url_prefix="/user") # url_prefix是加前缀 "bp"是蓝图的名字,必须要写
@bp.route("/bp",methods=["GET","Post"])
def my_bp():
return "I am bp in user.py"
另一个示例
from flask import Blueprint # 导入 Flask 中的蓝图 Blueprint 模块
from flask import render_template sv = Blueprint(
"sv",
__name__,
template_folder="sv_template",
static_folder="sv_static" # 静态文件目录也是可以独立出来的
)
# 实例化一个蓝图(Blueprint)对象
# 每个蓝图都可以为自己独立出一套template模板文件夹,如果不写则共享项目目录中的templates @sv.route("/svlist")
def view_list():
return render_template("svlist.html")
二.蓝图结构
通过一个对学生信息在内存中进行增删改查的示例来说明蓝图结构

使用蓝图的基本结构, 其实和django中的差不多,其中
__init__.py
from flask import Flask
from .views import users,select,update,delete,add def create_app():
app = Flask(__name__) app.register_blueprint(users.users)
app.register_blueprint(select.select)
app.register_blueprint(update.update)
app.register_blueprint(delete.delete)
app.register_blueprint(add.add)
return app
manage.py
from app01 import create_app
from app01 import settings app = create_app()
app.config.from_object(settings.DebugSetting)
# app.config.from_object(settings.TestSetting) if __name__ == '__main__': app.run()
三.操作注意

在这里将模版文件夹标记,就可在pycharm中自动提示html文件了

模版语言要选择Jinja2, 否则按tab无法自动补全模版语言
Flask系列04--Flask的蓝图的更多相关文章
- Flask系列(二)Flask基础
知识点回顾 1.flask依赖wsgi,实现wsgi的模块:wsgiref(django),werkzeug(flask),uwsgi(上线) 2.实例化Flask对象,里面是有参数的 app = F ...
- Flask系列(六)Flask实例化补充及信号
一.实例化补充 instance_path和instance_relative_config是配合来用的. 这两个参数是用来找配置文件的,当用app.config.from_pyfile('setti ...
- Flask系列(三)蓝图、基于DButils实现数据库连接池、上下文管理
知识点回顾 1.子类继承父类的三种方式 class Dog(Animal): #子类 派生类 def __init__(self,name,breed, life_value,aggr): # Ani ...
- Flask系列06--(中间件)Flask的特殊装饰器 before_request,after_request, errorhandler
一.使用 Flask中的特殊装饰器(中间件)方法常用的有三个 @app.before_request # 在请求进入视图函数之前 @app.after_request # 在请求结束视图函数之后 响应 ...
- Flask系列(四)Flask实现简单页面登陆
from flask import Flask,render_template,request,redirect,session app = Flask(__name__,template_folde ...
- Flask系列(五)Flask实现分页
一.flask分页组件 from urllib.parse import urlencode,quote,unquote class Pagination(object): ""& ...
- Flask 系列之 部署发布
说明 操作系统:Windows 10 Python 版本:3.7x 虚拟环境管理器:virtualenv 代码编辑器:VS Code 实验目标 通过 Windows 的 WSL,将我们的项目网站部署到 ...
- flask --- 02. 路由, 初始化配置,蓝图
一.Flask 路由 1.添加路由的方式 ① ② 实例: ① @app.route("/my_de") def detail() ② def detail() app.add_ur ...
- Flask最强攻略 - 跟DragonFire学Flask - 第九篇 Flask 中的蓝图(BluePrint)
蓝图,听起来就是一个很宏伟的东西 在Flask中的蓝图 blueprint 也是非常宏伟的 它的作用就是将 功能 与 主服务 分开怎么理解呢? 比如说,你有一个客户管理系统,最开始的时候,只有一个查看 ...
- 【Python】Flask系列-URL和视图笔记
1.学习目标 熟悉Flask相关知识. 熟悉web开发流程. 能独立开发Flask项目. 2.环境配置 Python虚拟环境安装 因为python的框架更新迭代太快了,有时候需要在电脑上存在一个框架的 ...
随机推荐
- mybatis学习 十六 auto_mapping实现连表查询
只能使用多表联合查询方式. 要求:查询出的列别和属性名相同. 点字符 "." 在 SQL 是关键字符,两侧添加反单引号(Tab键上的一个字符) <select id=&q ...
- java学习第四周
这是暑假第四周,这周我继续学习了Java的基础知识. 了解到Java的类继承,学习到Java的接口的相关知识Java的每一个类都有且仅有一个直接父类,没有多重继承,但是接口可以继承多个,如果把接口看做 ...
- MacBook小技巧
退出全屏:Control+Command+F.关闭当前的应用程序:Command+W.退出应用程序,可对着Dock上的应用程序辅助点按(右键),选择退出.也可直接按Commnad+Q退出当前的应用程序 ...
- oracle 查看数据库版本
select * from v$version;
- set集合遍历
对 set 的遍历 1.迭代遍历: Set<String> set = new HashSet<String>(); Iterator<String> it = s ...
- redis 的一主二从三哨兵模式
概述 在部署redis 的时候,如果redis宕机,缓存将不可用,redis提供了哨兵模式保证redis实现高可用. 即一台主机两台从机,三台哨兵主机,如果主实例宕机,哨兵将将一台从机升级为主机.实现 ...
- tflite笔记
固化模型 方法一:freeze_graph方法 把tf.train.write_graph()生成的pb文件与tf.train.saver()生成的chkp文件固化之后重新生成一个pb文件 with ...
- etf基金和lof基金区别
①,含义不同.etf即交易指数开放基金,是跟踪某一指数的可以在交易所上市的开放式基金.lof基金是上市向开放基金,是中国首创的一种基金类型,也是etf基金的中国化.②,申购赎回的场所不同.etf和lo ...
- IDEA插件开发总结
一:前置步骤 1.添加开发插件所需的SDK: 1.1先添加JDK 1.2打开Project Structure-Platform Settings-SDKs 1.3添加IntelliJ Platfor ...
- cyclone iv中DDR2的本地接口时序
本地接口 信号名 方向 描述 local_burstbegin input 如果local_ready无效不起作用.IP核在local_write_req为高时,在phy_clk上升沿采样.当lo ...