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 ...
随机推荐
- video 在iphone手机的ios系统和微信端无法自动播放
描述:video 在iphone手机,微信端无法自动播放,ios系统下不能自动播放视频.而且如果没有autoplay属性,在微信端点击一次,弹不出视频,要一直触着两秒后才可以打开视频.如果点击播放的话 ...
- 前端基础面试题(js部分)
前端基础面试题(JS部分) 1.几种基本数据类型?复杂数据类型?值类型和引用数据类型?堆栈数据结构? 基本数据类型:Undefined.Null.Boolean.Number.String值类 ...
- Element UI中的上传文件功能
上传文件给后台: <el-upload style="display:inline-block" :limit=" class="upload-demo& ...
- File 关键词
getParent() 获取父路径 getAbsoluteFile 获取绝对路径 length() 获得文件的字节数 getName() 获取路径中最后部分的名字 getPath() 获取整体路径. ...
- Jenkins+Ant+JMeter集成
Tomcat是jenkins运行的容器,jenkins实际上是依赖于Tomcat才能启动的.Jenkins可以调度ant的脚本. Ant和maven类似,maven是执行pom文件,ant是执行bui ...
- Dapper操作MySQL数据库获取JSON数据中文乱码
前言 在项目中利用Dapper将JSON数据存储到MySQL数据库,结果发现JSON数据中的中文乱码,特此记录,希望对存储JSON的童鞋能有所帮助,文中若有错误之处,还望批评指正. Dapper获取J ...
- C 2014年笔试题
1.指出程序中的错误,说明原因并修正 int *p,*q; p=malloc(sizeof(int)*20); q=malloc(sizeof(int)*10); … q=p; … free(p); ...
- Chromium EC框架探索 1.1 开发环境搭建
1.1 开发环境搭建 本节参考官方文档getting started building ec images quickly编写本节介绍搭建ec开发环境的两种方式,后一种对于绝大多数人而言是不必要的. ...
- 【笔记3-31】Python语言基础-列表list
列表list my_list = [1, 2, 3, 4, 5] 索引index my_list[0] 获取列表长度 len(my_list) 切片 [起始:结束:步长] my_list[1:3:2] ...
- 关于Spring的常见面试题
1.Spring是什么? Spring是一个轻量级的IoC和AOP容器框架.是为Java应用程序提供基础性服务的一套框架,目的是用于简化企业应用程序的开发,它使得开发者只需要关心业务需求.常见的配置方 ...