flask的常规使用二
一、路由(router)
路由指定了url 到函数之间的一个映射关系。
url ---> flask框架拿到url 的路径部分和路由中的内容进行匹配,如果匹配成功了则执行对应的函数。如果没有找到则返回404错误信息。
注意:路由中的内容必须以”/” 开头。
二、视图函数
视图函数写法和普通的函数一样,
作用:编写逻辑(调用数据库对数据库内容操作等等)、返回内容给浏览器。
注意:
(1).必须要有返回值(不能返回None),
(2).同一个py文件中,视图函数的名称不能相同。
三、run函数中的参数
1 from flask import Flask
2
3 app = Flask(__name__)
4
5
6 @app.route('/index/')
7 def index():
8 print('我是视图函数...')
9 return 'hello world'
10
11
12 if __name__ == '__main__':
13 # host:主机
14 # port:端口号 默认是5000
15 # debug:True 表示开启调试模式。更容易分析错误。好处2:项目可以自启动。
16 # use_reloader:True 当修改完项目后,会自运行,加载最新的代码。
17 app.run(host='0.0.0.0', port=8000, debug=True, use_reloader=True)
四、URL路径参数
可以将url的路径部分内容,传递到视图函数中。
1 from flask import Flask
2
3 app = Flask(__name__)
4
5 # http://127.0.0.1:5000/index/aa/
6 # @app.route('/index/aa/')
7 # def index():
8 # return 'hello world'
9
10 """
11 格式:<名称msg>
12 注意:
13 (1).视图函数的位置参数必须要和'msg' 相同。
14 (2).当匹配成功后,flask将url的捕获的路径部分传递给msg位置参数
15 (3).默认方式会将内容中的'/' 当成路径分隔符。
16 (4).默认方式获取的内容是字符串类型 <string:msg> 或者 <msg>
17 """
18
19 # 字符串类型
20 # @app.route('/index/<string:msg>/')
21 # def index1(msg):
22 # print(msg, type(msg)) # 字符串。
23 # return 'hello bb'
24
25 # path: 将url的路径分隔符当成内容使用。
26 # @app.route('/index/<path:msg>/')
27 # def index1(msg):
28 # print(msg, type(msg))
29 # return 'hello bb'
30
31 # int
32 # @app.route('/index/<int:msg>/')
33 # def index1(msg):
34 # print(msg, type(msg))
35 # return 'hello bb'
36
37 # float 类型
38 @app.route('/index/<float:msg>/')
39 def index1(msg):
40 print(msg, type(msg))
41
42 return 'hello bb'
43
44
45 if __name__ == '__main__':
46 app.run(debug=True)
五、返回页面
注意:盛放模板文件的目录必须叫做 templates。原因是源码中已经指定了
目录的名称为templates。
但是,我们可以来修改目录名称,修改的方式(修改源码,给默认值重新赋值)
1、页面渲染数据
2、返回数据
(1) .返回普通的内容
(2) .返回列表
(3) .返回字典
(4) .返回对象
(5) .组合方式
flask的常规使用二的更多相关文章
- Flask 学习笔记(二):RESTful API
概括 URL:需要操作的对象,也就是资源 HTTP method:我要对该对象做什么(POST 增.DELETE 删.GET 查.PUT 和 PATCH 改) HTTP status code:操作的 ...
- Flask 教程 第十二章:日期和时间
本文翻译自The Flask Mega-Tutorial Part XII: Dates and Times 这是Flask Mega-Tutorial系列的第十二部分,我将告诉你如何以适配所有用户的 ...
- Flask学习之十二 使用boostrap
英文博客地址:http://blog.miguelgrinberg.com/post/the-flask-mega-tutorial-part-xii-facelift 中文翻译地址:http://w ...
- Flask 教程 第二十二章:后台作业
本文翻译自The Flask Mega-Tutorial Part XXII: Background Jobs 这是Flask Mega-Tutorial系列的第二十二部分,我将告诉你如何创建独立于W ...
- Flask 基础组件(二):配置文件
配置参数 flask中的配置文件是一个flask.config.Config对象(继承字典),默认配置为: { 'DEBUG': get_debug_flag(default=False), 是否开启 ...
- Flask构建微电影(二)
第三章.项目分析.搭建目录及模型设计 3.1.前后台项目目录分析 微电影网站 前台模块 后台模块 前台(home) 数据模型:models.py 表单处理:home/forms.py 模板目录:tem ...
- Flask开发微电影网站(二)
1.安装数据库连接依赖包 pip install flask-sqlalchemy 2.创建movie数据库 在CentOS虚拟机,进入MaridDB数据库提示符,创建movie数据库 create ...
- flask项目结构(二)创建flask,同步docker
简介: 建立flask容易,那么部署就比较麻烦了,配这个,配那个,更新………… 所以我从构建,就考虑部署的问题,使用docker部署. 程序都打包进docker,本博客有相关文章. pycharn直接 ...
- flask之jinjia2模板(二)
1.1.模板传参 (1)主程序 from flask import Flask,render_template app = Flask(__name__) @app.route('/') def he ...
随机推荐
- Failed to start component [StandardEngine[Tomcat].StandardHost[localhost].StandardContext[]] 错误(Day_25)
错误: 在maven项目,web启动的时候报这个错误 Failed to start component [StandardEngine[Tomcat].StandardHost[localho ...
- Spring Cloud 升级之路 - 2020.0.x - 6. 使用 Spring Cloud LoadBalancer (1)
本项目代码地址:https://github.com/HashZhang/spring-cloud-scaffold/tree/master/spring-cloud-iiford 我们使用 Spri ...
- jq slideDown后里面的A链接失效(已解决)
jq slideDown后里面的A链接失效(解决) 用jq 的 slideDown写了一个二级下拉菜单,但是里面的a标签全部失效了,挂的链接右键菜单可以正常打开,但是左键正常点击不行 查阅了很多资料, ...
- .Net Core自实现CLR异步编程模式(Asynchronous programming patterns)
最近在看一个线程框架,对.Net的异步编程模型很感兴趣,所以在这里实现CLR定义的异步编程模型,在CLR里有三种异步模式如下,如果不了解的可以详细看MSDN 文档Asynchronous progra ...
- 将TVM集成到PyTorch
将TVM集成到PyTorch 随着TVM不断展示出对深度学习执行效率的改进,很明显PyTorch将从直接利用编译器堆栈中受益.PyTorch的主要宗旨是提供无缝且强大的集成,而这不会妨碍用户.PyTo ...
- 鱼眼摄像头SLAM
鱼眼摄像头SLAM 在机器人技术.摄影测量学和计算机视觉等领域,鲁棒相机位姿估计是许多视觉应用的核心.近年来,在复杂.大规模的室内外环境中,人们越来越关注相机位姿估计方法的实时性.通用性和可操作性.其 ...
- 多核片上系统(SoC)架构的嵌入式DSP软件设计
多核片上系统(SoC)架构的嵌入式DSP软件设计 Multicore a System-on-a-Chip (SoC) Architecture SoCs的软件开发涉及到基于最强大的计算模型在各种处理 ...
- ASIC设计-终极指南
ASIC设计-终极指南 ASIC Design – The Ultimate Guide ASIC设计-终极指南 ASICs代表特定于应用的集成电路,指的是针对特定应用而设计的半导体解决方案,与其他解 ...
- 前台JS遍历Table的所有单元格数据内容
在日常开发过程中为了减少与后台服务器的交互次数,大部分的功能都会放到前台使用JS来完成. 例如:一个表中有ID(FOCUS_SEQ)和Name(COLUMNCTRL)两个字段,其中ID是自定义连续增长 ...
- TCPIP原理
------------恢复内容开始------------ OSI参考模型 osi参考模型结构 对等通信 注释: 每一层都有自己的协议 每一层都利用下层提供的服务与对等层通信 PDU=protoco ...