很多类型的应用程序需要在特定事件发生时提醒用户,而常用的通信方法是电子邮件。虽然Python标准库中的smtplib包可用在Flask程序中发送电子邮件,但包装了smtplib的Flask-Mail扩展能更好地和Flask集成。

使用Flask-Mail提供电子邮件支持


使用pip安装Flask-Mail:

阅读全文 »

数据库按照一定规则保存程序数据,程序再发起查询取回所需的数据。Web程序最常用基于关系模型的数据库,这种数据库也称为SQL数据库,因为它们使用结构化查询语句。不过最近几年文档数据库键值对数据库成了流行的替代选择,这两种数据库合称NoSQL数据库。

阅读全文 »

Flask——程序的基本结构中介绍的请求对象包含客户端发出的所有请求信息。其中,request.form能获取POST请求中提交的表单数据。

尽管Flask的请求对象提供的信息足够用于处理Web表单,但有些任务很单调,而且要重复操作。比如:生成表单的HTML代码和验证提交的表单数据。

阅读全文 »

浏览器的主要功能


浏览器的主要功能是将用户选择的WEB资源呈现出来,它需要从服务器请求资源,并将其显示在浏览器窗口中,资源的格式通常是HTML,也包括PDF、image及其他格式。用户用URL来指定所请求资源的位置。HTML和CSS规范中规定了浏览器解释HTML文档的方式,由W3C组织对这些规范进行维护,W3C是负责制定WEB标准的组织。

阅读全文 »

要想开发出易于维护的程序,关键在于编写形式简洁且结构良好的代码。视图函数的作用很明确,即生成请求的响应,对最简单的请求来说,这就足够了,但一般而言,请求会改变程序的状态,而这种变化也会在视图函数中产生。

例如:用户在网站中注册了一个新账户。用户在表单中输入电子邮件地址和密码,然后单击提交按钮。服务器接收到包含用户输入数据的请求,然后Flask把请求分发到处理注册请求的视图函数。这个视图函数需要访问数据库,添加新用户,然后生成响应回送浏览器。这两个过程分别称为业务逻辑表现逻辑

阅读全文 »

初始化


所有Flask都必须创建一个程序实例。Web服务器使用一种名为Web服务器网关接口的(Web Server Gateway Interface,WSGI)的协议,把接收自客户端的所有请求都转交给这个对象处理。程序实例是Flask类的对象,经常使用下述代码构建:

1
2
from flask import Flask
app = Flask(__name__)
阅读全文 »

安装需要的类库及Python2.X


安装必要的开发包

1
2
yum groupinstall "Development tools" -y
yum install zlib-devel bzip2-devel pcre-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel wget -y
阅读全文 »

ASCII码


我们知道,在计算机内部,所有的信息最终都表示为一个二进制的字符串。每一个二进制位(bit)有0和1两种状态,因此八个二进制位就可以组合出256种状态,这被称为一个字节(byte)。也就是说,一个字节一共可以用来表示256种不同的状态,每一个状态对应一个符号,就是256个符号,从00000000到11111111。

上个世纪60年代,美国制定了一套字符编码,对英语字符与二进制位之间的关系做了统一规定。这被称为ASCII码,一直沿用至今。

阅读全文 »

Linux下大概有同步阻塞、同步非阻塞、异步阻塞和异步非阻塞四种I/O模型。

同步与异步


在学校食堂排队等候打饭,必须等到队列前面没人了才会轮到自己,这场景就是同步。如果换成去餐馆,不需要排队直接点菜,菜好了之后服务员直接给我送上来,这种场景就是异步。异步与同步之间的区别就是消息是如何通知的,在上面场景中,排队打饭需要自己去关注是不是轮到我们了,而餐馆点菜是由服务员通知我们菜好了。

阅读全文 »

inode和dentry在VFS和实体的文件系统(ext2、ext3等)中都是比较重要的概念。首先看一下虚拟文件系统的标准定义:

虚拟机文件系统(英语:Virtual File System,缩写为VFS),又称虚拟文件切换系统(Virtual Filesystem Switch),是操作系统的文件系统虚拟机层,在其下是实体的文件系统。虚拟文件系统的主要功能,在于让上层的软件,能够用单一的方式来跟底层不同的文件系统沟通。在操作系统与之下的各种文件系统之间,虚拟文件系统提供了标准的操作接口,让操作系统能够很快的支持新的文件系统。

阅读全文 »
0%