Flask 入门(十二)
Blueprint ,听说过么?
那必须的啊!但它是干嗒的?也不难理解!
如果你的项目是一个公司,Blueprint就是治理你的公司的
没有Blueprint,你的公司除了老板就是员公
有了Blueprint,你的公司除了老板,还有外交部,人事部,管理部......
废话少说,一个简单的例子,让你秒懂!!!!!!!!!
1.首先,新建一个项目
2.项目下新建两个文件夹分别叫app01,app02,
3.app01中新建一个python文件app01.py,app02中新建一个python文件app02.py,框架如下:
4.编写app01.py代码如下:
from flask import Blueprint
app01=Blueprint(name="app01",import_name=__name__)
@app01.route('/')
def index():
return "app01"
@app01.route('/menu')
def menu():
return "app01-menu"
@app01.route('/function')
def function():
return 'app01-function'
5.编写app02.py代码如下:
from flask import Blueprint
app02=Blueprint(name="app02",import_name=__name__)
@app02.route('/')
def index():
return "app02"
@app02.route('/menu')
def menu():
return "app02-menu"
@app02.route('/function')
def function():
return 'app02-function'
6.编写app.py(项目运行文件)如下:
from flask import Flask
from app01.app01 import app01
from app02.app02 import app02
app = Flask(__name__)
@app.route('/')
def hello_world():
return 'app'
@app.route('/menu')
def menu():
return 'app-menu'
@app.route('/function')
def function():
return 'app-function'
app.register_blueprint(blueprint=app01,url_prefix='/app01')
app.register_blueprint(blueprint=app02,url_prefix='/app02')
if __name__ == '__main__':
app.run()
7.打开浏览器,依次输入如下网址:
127.0.0.1:5000
127.0.0.1:5000/menu
127.0.0.1:5000/function
127.0.0.1:5000/app01
127.0.0.1:5000/app01/menu
127.0.0.1:5000/app01/function
127.0.0.1:5000/app02
127.0.0.1:5000/app02/menu
127.0.0.1:5000/app02/function
骚年,你可看懂了?
Flask 入门(十二)的更多相关文章
- Android入门(十二)SQLite事务、升级数据库
原文链接:http://www.orlion.ga/610/ 一.事务 SQLite支持事务,看一下Android如何使用事务:比如 Book表中的数据都已经很老了,现在准备全部废弃掉替换成新数据,可 ...
- flask 入门(二)
Windows(提前安好virtualenv:pip install virtualenv) 一.准备: 1.启动pycharm 2.创建flask项目 二.基本库安装和设置 1.创建沙盒virt ...
- ES6入门十二:Module(模块化)
webpack4打包配置babel7转码ES6 Module语法与API的使用 import() Module加载实现原理 Commonjs规范的模块与ES6模块的差异 ES6模块与Nodejs模块相 ...
- SpringBoot入门 (十二) 定时任务
本文记录在SpringBoot中使用定时任务. 在我们的项目中,经常需要用到定时任务去帮我们做一些事情,比如服务状态监控,业务数据状态的更改等,SpringBoot中实现定时任务有2中方案,一种是自带 ...
- flask第二十二篇——模板【4】过滤器
请关注微信公众号:自动化测试实战 先来教大家一个pycharm设置默认模板的方法.我们每次新建模板或者平时写代码打开以后可能都要重复写# coding: utf-8这些代码,其实我们可以设置好模板,让 ...
- flask学习(十二):for循环遍历
一. 字典的遍历 语法和python一样,可以使用items().keys().values().iteritems().iterkeys().itervalues() {% for k, v in ...
- flask第十二篇——自定义url转换器【2】
继续昨天的话题,今天我们来写一个手机号的转换器,方便大家理解 我们在`BaseConverter`源码里看到好多这种正则表达式: 正则表达式的目的就是规范匹配的规则,现在我们写一个简单的匹配手机号的正 ...
- java web开发入门十二(idea创建maven SSM项目需要解决的问题)基于intellig idea(2019-11-09 11:23)
一.spring mvc action返回string带双引号问题 解决方法: 在springmvc.xml中添加字符串解析器 <!-- 注册string和json解析适配器 --> &l ...
- flask入门(二)
接着上文 讲一讲响应 flask调用视图函数后,会将其返回值作为响应的内容.大多数情况下,响应就是一个简单的字符串,作为HTML页面回送客户端.但HTTP协议需要的不仅是作为请求响应的字符串.HTTP ...
- Flask 学习 十二 用户评论
评论在数据库中的表示 由于评论和2个模型有关系,分别是谁发了评论,以及评论了哪个文章,所以这次要更新数据库模型 models.py 创建用户评论数据库模型 class Comment(db.Model ...
随机推荐
- Maven pom.xml 添加本地jar包依赖以及打包方法
Maven项目打包时,如果遇到需要添加本地jar包依赖的时候,可以选择两种方法: 1. 安装到本地仓库 第一种方法比较常规,适用于需要添加的jar包也是由maven项目导出,含有pom文件的时候.只需 ...
- html5 cavans的小应用
1.canvas鼠标画线,canvas小方块移动,canvas小方块旋转并缩放 <!doctype html> <html> <head> <meta cha ...
- AndroidStudio提高编译速度的几种方法
第一种: 减少依赖库的使用,让代码更加精简.对于一些必须依赖的库要尽量使用jar包或者依赖库,这样他每次就会在本地直接加载,而不是每次翻墙检查更新 第二种: 打开Android Studio,选择菜单 ...
- 关于BitmapImage EndInit()时报值不在范围内的异常
值不在预期的范围内.ArgumentException 在 System.Windows.Media.ColorContext.GetColorContextsHelper(GetColorConte ...
- Python习题集(四)
每天一习题,提升Python不是问题!!有更简洁的写法请评论告知我! https://www.cnblogs.com/poloyy/category/1676599.html 题目 如果一个 3 位数 ...
- 手把手构建LSTM的向前传播(Building a LSTM step by step)
本篇是在之前两篇基础上接着写的: 吴恩达deepLearning.ai循环神经网络RNN学习笔记(理论篇) 从头构建循环神经网络RNN的向前传播(rnn in pure python) 也可以不看 ...
- 网络安全从入门到精通(第一章-1)Web服务器通信原理
本文内容 IP地址 域名 端口 HTTP协议 从访客角度看网页浏览器流程 常见服务器系统 路径 Web容器 常见的Web容器 !!!多动手,多动手,只看只听是不行的!!! 1,IP地址:就是计算机在互 ...
- leetcode面试题 17.16. 按摩师
leetcode面试题 17.16. 按摩师 又一道动态规划题目 动态规划的核心就是总结出一个通行的方程. 但是这道题似乎不太适合使用递归的方式. 所以使用for循环遍历数组. class Solut ...
- identityserver4源码解析_2_元数据接口
目录 identityserver4源码解析_1_项目结构 identityserver4源码解析_2_元数据接口 identityserver4源码解析_3_认证接口 identityserver4 ...
- NDCG的理解
2019-05-29 14:15:44