python框架中flask知识点总结


Posted in Python onAugust 17, 2018

有很久没有更新我的博客了,在学习flask去了,别人都说flask不难,其实现在我也这么觉得,但是在刚接触的时候还是有点吃力的。

在学习的过程中查阅了不少,也了解了许多,今天想做个总结。。。以免觉得学了那么久什么都没学到,还有防止以后忘记。

一.关于装饰器,路由

最开始接触的时候觉得好神奇,只会照着敲不知道怎么自己用起来

@app .route(‘/')

def hello:

print(‘hello')

注意:1.只有@这个东西是固定的,app 是可以换的,这与蓝本中的定义有关,blueprint给了xx之后在import和@的时候就是xx哦

2.@下面的def就是你会被装饰的函数,至于和谁装饰,这就与route有关了

3.‘/'也是一个有趣的东西,现在它还很单调无味,等到东西多的时候可以自己加这玩/post,/login。。。在之后有登入的时候,还可以变成登入用户的/post/<name>,具体操作不告诉你,可以思考下,不难。

二.模板

1.我们在子模板的开头定义了”{% extend ‘xx' %}”语句来声明继承,此后在子模板中由”{% block block_name %}”和”{% endblock %}”所包括的语句块,将会替换父模板中同样由”{% block block_name %}”和”{% endblock %}”所包括的部分。

2.如果父模板中的块里有内容不想被子模板替换怎么办?我们可以使用{{super( )}}

3.块内语句的作用域:默认情况下,块内语句是无法访问块外作用域中的变量。如果你想在块内访问这个块外的变量,你就需要在块声明时(父)添加”scoped”关键字。

4.宏{% macro macro_name() %}{% endmacro %}类似于函数

5.import和include就是包含 (Include),使用的方法就是”{% include %}”语句。其功能就是将另一个模板加载到当前模板中,并直接渲染在当前位置上。它同导入”import”不一样,”import”之后你还需要调用宏来渲染你的内容,”include”是直接将目标模板渲染出来。它同block块继承也不一样,它一次渲染整个模板文件内容,不分块。

三.表单和数据库

大坑啊

1.提交表单大多用POST
发送请求的最后一个请求如果是包含表单数据的POST请求的话,刷新页面会再次提交表单,这样容易提交,例如,之前是下订单的请求,刷新以后可能是再下一次订单。所以最好别让POST作为最后一个请求。

2.可以用重定向 redirect()有时候和url_for()一起玩,url_for()参数可以是被装饰的函数的函数名,例如main.index

3.添加会话db.session.add()和db.session.commit()提交会话

4.每次更改了表单的列的时候记得更新啊

Python 相关文章推荐
Python最基本的数据类型以及对元组的介绍
Apr 14 Python
python通过smpt发送邮件的方法
Apr 30 Python
在Python中使用正则表达式的方法
Aug 13 Python
python基于phantomjs实现导入图片
May 13 Python
使用python的pexpect模块,实现远程免密登录的示例
Feb 14 Python
树莓派实现移动拍照
Jun 22 Python
django基于cors解决跨域请求问题详解
Aug 06 Python
python实现的登录与提交表单数据功能示例
Sep 25 Python
Django实现从数据库中获取到的数据转换为dict
Mar 27 Python
浅谈如何使用python抓取网页中的动态数据实现
Aug 17 Python
Python面向对象多态实现原理及代码实例
Sep 16 Python
学会迭代器设计模式,帮你大幅提升python性能
Jan 03 Python
Flask Web开发入门之文件上传(八)
Aug 17 #Python
python操作excel的方法
Aug 16 #Python
python3调用百度翻译API实现实时翻译
Aug 16 #Python
Python用于学习重要算法的模块pygorithm实例浅析
Aug 16 #Python
Python pygorithm模块用法示例【常见算法测试】
Aug 16 #Python
Python使用pickle模块报错EOFError Ran out of input的解决方法
Aug 16 #Python
Python使用pickle模块储存对象操作示例
Aug 15 #Python
You might like
2019十大人气国漫
2020/03/13 国漫
PHP5.0正式发布 不完全兼容PHP4 新增多项功能
2006/10/09 PHP
PHP使用CURL_MULTI实现多线程采集的例子
2014/07/29 PHP
php cookie中点号(句号)自动转为下划线问题
2014/10/21 PHP
PHP利用APC模块实现文件上传进度条的方法
2015/01/26 PHP
PHP获取当前时间不准确问题解决方案
2020/08/14 PHP
Flash对联广告的关闭按钮讨论
2007/01/30 Javascript
本地图片预览(支持IE6/IE7/IE8/Firefox3)经验总结
2013/03/25 Javascript
javascript的回调函数应用示例
2014/02/20 Javascript
jquery分页插件jpaginate在IE中不兼容问题
2014/04/22 Javascript
angular.element方法汇总
2015/01/07 Javascript
JavaScript判断是否为数组的3种方法及效率比较
2015/04/01 Javascript
理解javascript中的严格模式
2016/02/01 Javascript
AngularJS入门教程之MVC架构实例分析
2016/11/01 Javascript
js获取json中key所对应的value值的简单方法
2020/06/17 Javascript
JavaScript 实现 Tab 点击切换实例代码
2017/03/25 Javascript
基于打包工具Webpack进行项目开发实例
2018/05/29 Javascript
实用Javascript调试技巧分享(小结)
2019/06/18 Javascript
vuex管理状态 刷新页面保持不被清空的解决方案
2019/11/11 Javascript
微信小程序分享小程序码的生成(带参数)以及参数的获取
2020/03/25 Javascript
Ant Design的可编辑Tree的实现操作
2020/10/31 Javascript
微信小程序实现列表左右滑动
2020/11/19 Javascript
Python数据分析之获取双色球历史信息的方法示例
2018/02/03 Python
Python3内置模块pprint让打印比print更美观详解
2019/06/02 Python
python3.7 的新特性详解
2019/07/25 Python
python如何实现单链表的反转
2020/02/10 Python
python3爬虫中多线程的优势总结
2020/11/24 Python
html5本地存储_动力节点Java学院整理
2017/07/12 HTML / CSS
html5 css3网站菜单实现代码
2013/12/23 HTML / CSS
HTML5单页面手势滑屏切换原理分析
2017/07/10 HTML / CSS
美国台面电器和厨具品牌:KitchenAid
2019/04/12 全球购物
英国计算机商店:Technextday
2019/12/28 全球购物
2014年高三毕业生自我评价
2014/01/11 职场文书
创业资金计划书
2014/02/06 职场文书
优秀学生事迹材料
2014/02/08 职场文书
经理岗位职责
2015/02/02 职场文书