Flask Web开发实战阅读笔记
pinou921
这个作者很懒,什么都没留下…
展开
-
第四章 表单 (2)
处理表单数据表单数据的处理涉及很多内容,除去表单提交不说,从获取数据到保存数据大致会经历以下步骤:1)解析请求,获取表单数据。2)对数据进行必要的转换,比如将勾选框的值转换成Python的布尔值。3)验证数据是否符合要求,同时验证CSRF令牌。4)如果验证未通过则需要生成错误消息,并在模板中显示错误消息。5)如果通过验证,就把数据保存到数据库或做进一步处理。除非是简单的程序,否则手动处理不太现实,使用Flask-WTF和WTForms可以极大地简化这些步骤。提交表单在HTML中,..原创 2020-11-26 22:53:46 · 226 阅读 · 0 评论 -
第四章 表单 (1)
HTML表单在HTML中,表单通过<form>标签创建,表单中的字段使用<input>标签定义。下面是一个非常简单的HTML表单:<form method="post"> <label for="username">Username</label><br> <input type="text" name="username" placeholder="Héctor Rivera"><br&g原创 2020-11-18 23:00:38 · 275 阅读 · 0 评论 -
第三章 模板 (2)
模板结构组织除了使用函数、过滤器等工具控制模板的输出外,Jinja2还提供了一些工具来在宏观上组织模板内容。局部模板当程序中的某个视图用来处理AJAX请求时,返回的数据不需要包含完整的HTML结构,这时就可以返回渲染后的局部模板。当多个独立模板中都会使用同一块HTML代码时,我们可以把这部分代码抽离出来,存储到局部模板中。这样一方面可以避免重复,另一方面也可以方便统一管理。比如,多个页面中都要在页面顶部显示一个提示条,这个横幅可以定义在局部模板_banner.html中。我们使用incl原创 2020-11-17 23:21:31 · 245 阅读 · 0 评论 -
第三章 模板 (1)
模板引擎的作用就是读取并执行模板中的特殊语法标记,并根据传入的数据将变量替换为实际值,输出最终的HTML页面,这个过程被称为渲染(rendering)。Flask默认使用的模板引擎是Jinja2,它是一个功能齐全的Python模板引擎,除了设置变量,还允许我们在模板中添加if判断,执行for迭代,调用函数等,以各种方式控制模板的输出。在模板中添加Python语句和表达式时,...原创 2020-11-07 15:24:53 · 135 阅读 · 0 评论 -
第二章 Flask与HTTP (4)
AJAX技术1.认识AJAXAJAX指异步Javascript和XML(Asynchronous JavaScript And XML),它不是编程语言或通信协议,而是一系列技术的组合体。简单来说,AJAX基于XMLHttpRequest(https://xhr.spec.whatwg.org/ )让我们可以在不重载页面的情况下和服务器进行数据交换。加上JavaScript和DOM(Doc...原创 2020-11-07 15:24:30 · 124 阅读 · 0 评论 -
第二章 Flask与HTTP (3)
HTTP进阶实践 1.获取上一个页面的URL 要重定向回上一个页面,最关键的是获取上一个页面的URL。上一个页面的URL一般可以通过两种方式获取:(1)HTTP refererHTTP referer(起源为referrer在HTTP规范中的错误拼写)是一个用来记录请求发源地址的HTTP首部字段(HTTP_REFERER),即访问来源。当用户在某个站点单击链接,浏览器向新链接所在...原创 2020-11-07 15:24:07 · 128 阅读 · 0 评论 -
第二章 Flask与HTTP (2)
来一块Cookie HTTP是无状态(stateless)协议。也就是说,在一次请求响应结束后,服务器不会留下任何关于对方状态的信息。但是对于某些Web程序来说,客户端的某些信息又必须被记住,比如用户的登录状态,这样才可以根据用户的状态来返回不同的响应。为了解决这类问题,就有了Cookie技术。Cookie技术通过在请求和响应报文中添加Cookie数据来保存客户端的状态信息.Coo...原创 2020-11-07 15:23:48 · 647 阅读 · 0 评论 -
第二章 Flask与HTTP (1)
HTTP(Hypertext Transfer Protocol,超文本传输协议)定义了服务器和客户端之间信息交流的格式和传递方式,它是万维网(World Wide Web)中数据交换的基础。HTTP请求 一个标准的URL由很多部分组成,以下面这个URL为例: http://helloflask.com/hello?name=Grey ...原创 2020-11-07 15:23:23 · 259 阅读 · 0 评论 -
第一章 hello flask
hello flaskfrom flask import Flaskapp = Flask(__name__)传入Flask类构造方法的第一个参数是模块或包的名称,我们应该使用特殊变量__name__。Python会根据所处的模块来赋予__name__变量相应的值,对于我们的程序来说(app.py),这个值为app。注册路由在一个Web应用里,客户端和服务器上的Flask...原创 2020-11-07 15:23:04 · 286 阅读 · 0 评论