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 ...
随机推荐
- java 集合梳理
使用 processOn 画的java 集合图谱,应付面试应该可以了
- 由Chromium内核引起的微信内置浏览器rce漏洞复现
背景 chrome浏览器爆出漏洞,github上公开了poc:https://github.com/r4j0x00/exploits/tree/master/chrome-0day,在关闭chrome ...
- 第7讲 | ICMP与ping:投石问路的侦察兵
第7讲 | ICMP与ping:投石问路的侦察兵 ping 是基于 ICMP 协议工作的.ICMP 全称 Internet Control Message Protocol,就是互联网控制报文协议. ...
- selenium-元素无法定位解决办法
selenium-元素无法定位解决办法 有时会出现元素定位失败的情况,以百度首页为例,定位输入框,报错如下: selenium.common.exceptions.NoSuchElementExc ...
- 多平台Gstreamer Multiplatform
多平台Gstreamer Multiplatform GStreamer可在所有主要操作系统上运行,例如Linux,Android,Windows,Max OS X,iOS,以及大多数BSD,商业Un ...
- TensorFlow+TVM优化NMT神经机器翻译
TensorFlow+TVM优化NMT神经机器翻译 背景 神经机器翻译(NMT)是一种自动化的端到端方法,具有克服传统基于短语的翻译系统中的弱点的潜力.本文为全球电子商务部署NMT服务. 目前,将Tr ...
- 智能物联网(AIoT,2020年)(中)
智能物联网(AIoT,2020年)(中) 05 中国AIoT产业图谱 06 中国AIoT商业模式 标准程度越低人力和时间成本投入越多,2B2C模式附加值高 07 中国AIoT玩家分布简介 四类玩家,优 ...
- 【NX二次开发】NX内部函数,查找内部函数的方法
[NX二次开发]NX内部函数,libufunx.dll文件中的内部函数 [NX二次开发]NX内部函数,libugui.dll文件中的内部函数 [NX二次开发]NX内部函数,libuifw.dll文件中 ...
- 不懂就问」CPU 到底是怎么识别代码的?
近读到这样一篇文章,从底层硬件角度出发剖析了一下CPU对代码的识别和读取,内容之精彩,读完感觉学到的很多东西瞬间联系起来了,分享给猿们. 首先要开始这个话题要先说一下半导体.啥叫半导体? 半导体其实就 ...
- 解析 Nebula Graph 子图设计及实践
本文首发于 Nebula Graph 公众号 NebulaGraphCommunity,Follow 看大厂图数据库技术实践. 前言 在先前的 Query Engine 源码解析中,我们介绍了 2.0 ...