flask之Blueprint蓝图

flask_Blueprint.py
'''
flask中的Blueprint蓝图:
(1)新建模块,例如Bp1.py,Bp2.py,在模块中创建蓝图实例
(2)通过app.register_blueprint()对蓝图对象进行注册
(3)如果在蓝图中设置了参数url_prefix就必须在请求的端口后路径前加上
''' from flask import Flask, Blueprint, render_template app = Flask(__name__)
app.config['DEBUG'] = True # 导入蓝图,通过app.register_blueprint()对蓝图对象进行注册
from Bp1 import Bp1
from Bp2 import Bp2 app.register_blueprint(Bp1)
app.register_blueprint(Bp2) @app.route('/base')
def base():
return render_template('index.html') if __name__ == '__main__':
app.run()
Bp1.py
'''
flask中的Blueprint蓝图类源码:
def __init__(
self,
name, # 唯一蓝图名
import_name, #当前文件名
static_folder=None, #静态文件目录
static_url_path=None, #静态文件请求路径
template_folder=None, #模板文件目录
url_prefix=None, #url请求路径前缀,如果指定,在请求时必须在端口之后路径之前加上才能正常访问
subdomain=None, #子域
url_defaults=None,
root_path=None,
cli_group=_sentinel,
) 蓝图中没有config配置和run函数,功能于一个app的分支功能模块,在主程序中通过app.register_blueprint()进行注册引入使用
''' from flask import Blueprint, render_template Bp1=Blueprint('Bp1',__name__,static_folder='staticfiles',static_url_path='/static',template_folder='html',url_prefix='/Bp1') @Bp1.route('/BluePrint')
def func1():
return 'BluePrint1' @Bp1.route('/index')
def index():
return render_template('index0.html')
Bp2.py
from flask import Blueprint
Bp2=Blueprint('Bp2',__name__,url_prefix='/Bp2') @Bp2.route('/BluePrint')
def func1():
return 'BluePrint2'
indx0.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>index</title>
</head>
<body>
<h2>项目中指定模板文件目录html中的index页面,默认不指定为templates模板目录</h2> <div><h2>项目中指定静态文件目录staticfiles返回当前图片,默认不指定为static静态文件目录</h2>
<img src="/static/1.png" alt=""></div>
</body>
</html>
flask之Blueprint蓝图的更多相关文章
- python框架之Flask(3)-Blueprint(蓝图)
蓝图 用途 给开发者提供清晰的目录结构. 使用 目录结构 1.创建项目. 2.在项目目录下创建与项目名同名文件夹. 3.在 test_prj 文件夹下创建 __init__.py 文件,并在其中实例化 ...
- Python Flask Blueprint 蓝图
Python Flask Blueprint 蓝图 本篇来了解一下 Flask 中 Blueprint 蓝图,什么蓝图 ..就是一个分模块的扩展而已,用来让不同的 业务模块api 分到不同的pytho ...
- 第九篇 Flask 中的蓝图(BluePrint)
第九篇 Flask 中的蓝图(BluePrint) 蓝图,听起来就是一个很宏伟的东西 在Flask中的蓝图 blueprint 也是非常宏伟的 它的作用就是将 功能 与 主服务 分开怎么理解呢? ...
- Flask路由与蓝图Blueprint
需求分析: 当一个庞大的系统中有很多小模块,在分配路由的时候怎么处理呢?全部都堆到一个py程序中,调用@app.route? 显然这是很不明智的,因为当有几十个模块需要写路由的时候,这样程序员写着写着 ...
- flask Blueprint蓝图
首先要了解蓝图的作用,模拟场景在团队开发过程中团队每个人都在写自己负责的功能模块,那多个py文件模板,我们如果完成后需要运行是不是要运行多个服务?但是我们的项目是一个整体,而不是零散的,所以我们怎么把 ...
- Flask最强攻略 - 跟DragonFire学Flask - 第九篇 Flask 中的蓝图(BluePrint)
蓝图,听起来就是一个很宏伟的东西 在Flask中的蓝图 blueprint 也是非常宏伟的 它的作用就是将 功能 与 主服务 分开怎么理解呢? 比如说,你有一个客户管理系统,最开始的时候,只有一个查看 ...
- Flask 中的蓝图(BluePrint)
蓝图,听起来就是一个很宏伟的东西 在Flask中的蓝图 blueprint 也是非常宏伟的 它的作用就是将 功能 与 主服务 分开 怎么理解呢? 比如说,你有一个客户管理系统,最开始的时候,只有一个查 ...
- python 全栈开发,Day120(路由系统, 实例化Flask的参数, 蓝图(BluePrint), before_request after_request)
昨日内容回顾 1.Flask: from flask import Flask app = Flask(__name__) # 从源码中可以看出,Flask集成的run方法是由werkzeug中的ru ...
- Flask中的蓝图(BluePrint)、
蓝图 1.初识Flask蓝图(BluePrint) 创建一个项目然后将目录结构做成: user.py中的内容 from flask import Blueprint, render_template ...
随机推荐
- 取 token 并查看 container 信息
curl -i -k \ -H "Content-Type: application/json" \ -d ' { "auth": { "identi ...
- Spring Boot 静态文件,请求不到,util文件夹
静态文件貌似对util文件夹有特殊处理static/js/test.js 可以请求到static/js/laydate/test.js 可以请求到static/js/util/test.js 请求不到
- Facebook发布神经蛋分离法,可从嘈杂环境中提取音视频
分离混合分布是机器学习和信号处理的长期挑战,而Facebook近日提出的新方法似乎可以有效解决这一难题. 人类天生善于分离个别声音和视觉效果,例如在拥挤的鸡尾酒会上听到别人的声音,或者在动物穿过灌木丛 ...
- 高可用性GRE+IPSEC中心—分支
在实际网络运用中我们时常跑GRE+IPSEC来实现我们中心到分支的远程访问回话,这样以来容易配置,而来可用性高,我们知道L2L无论是链路备份还是设备备份,都不是状态备份,当一个点断掉后,用经过几十秒甚 ...
- winform练习-通过遍历Control容器中的对象统一委托事件-楼盘选择器
1.窗体布局如下,一个label标签内容如下,一个btnSave按钮,用于保存,其他九个按钮用于选择楼盘. 2. 按钮存于Control容器中,编写方法遍历容器中的button,通过条件过滤掉不是bu ...
- python操作ansible api示例
#!/usr/bin/env python # -*- coding:utf-8 -*- import json import shutil from collections import named ...
- 「译」JVM是如何使用那些你从未听过的x86魔幻指令实现String.compareTo的
原文https://jcdav.is/2016/09/01/How-the-JVM-compares-your-strings/ 魔幻的String.compareTo 我们之前可能已经见过Java的 ...
- Java——多线程之Lock锁
Java多线系列文章是Java多线程的详解介绍,对多线程还不熟悉的同学可以先去看一下我的这篇博客Java基础系列3:多线程超详细总结,这篇博客从宏观层面介绍了多线程的整体概况,接下来的几篇文章是对多线 ...
- V - Can you answer these queries? HDU - 4027 线段树 暴力
V - Can you answer these queries? HDU - 4027 这个题目开始没什么思路,因为不知道要怎么去区间更新这个开根号. 然后稍微看了一下题解,因为每一个数开根号最多开 ...
- 树形dp compare E - Cell Phone Network POJ - 3659 B - Strategic game POJ - 1463
B - Strategic game POJ - 1463 题目大意:给你一棵树,让你放最少的东西来覆盖所有的边 这个题目之前写过,就是一个简单的树形dp的板题,因为这个每一个节点都需要挺好处 ...