随笔分类 - Django系列
摘要:发展史 1、很久很久以前,Web 基本上就是文档的浏览而已, 既然是浏览,作为服务器, 不需要记录谁在某一段时间里都浏览了什么文档,每次请求都是一个新的HTTP协议, 就是请求加响应, 尤其是我不用记住是谁刚刚发了HTTP请求, 每个请求对我来说都是全新的。这段时间很嗨皮 2、但是随着交互式Web应
阅读全文
摘要:一 同源策略 同源策略(Same origin policy)是一种约定,它是浏览器最核心也最基本的安全功能,如果缺少了同源策略,则浏览器的正常功能可能都会受到影响。可以说Web是构建在同源策略基础之上的,浏览器只是针对同源策略的一种实现 请求的url地址,必须与浏览器上的url地址处于同域上,也就
阅读全文
摘要:一 CSRF是什么 CSRF(Cross site request forgery)跨站请求伪造,也被称为“One Click Attack”或者Session Riding,通常缩写为CSRF或者XSRF,是一种对网站的恶意利用。尽管听起来像跨站脚本(XSS),但它与XSS非常不同,XSS利用站点
阅读全文
摘要:一 信号简介 Django提供一种信号机制。其实就是观察者模式,又叫发布 订阅(Publish/Subscribe) 。当发生一些动作的时候,发出信号,然后监听了这个信号的函数就会执行。 通俗来讲,就是一些动作发生的时候,信号允许特定的发送者去提醒一些接受者。用于在框架执行操作时解耦。 二 Djan
阅读全文
摘要:一 缓存介绍 在动态网站中,用户所有的请求,服务器都会去数据库中进行相应的增,删,查,改,渲染模板,执行业务逻辑,最后生成用户看到的页面. 当一个网站的用户访问量很大的时候,每一次的的后台操作,都会消耗很多的服务端资源,所以必须使用缓存来减轻后端服务器的压力. 缓存是将一些常用的数据保存内存或者me
阅读全文
摘要:Django除了我们常见的admin、auth、session等contrib框架外,还包含一个 框架,它可以跟踪Django项目中安装的所有模型(model),为我们提供更高级的模型接口。默认情况下,它已经在settings中了,如果没有,请手动添加: 平时还是尽量启用contenttypes框架
阅读全文
摘要:1 Auth模块是什么 Auth模块是Django自带的用户认证模块: 我们在开发一个网站的时候,无可避免的需要设计实现网站的用户系统。此时我们需要实现包括用户注册、用户登录、用户认证、注销、修改密码等功能,这还真是个麻烦的事情呢。 Django作为一个完美主义者的终极框架,当然也会想到用户的这些痛
阅读全文
摘要:一 什么是中间件 中间件顾名思义,是 介于request与response处理之间的一道处理过程 ,相对比较轻量级,并且在全局上改变django的输入与输出。因为改变的是全局,所以需要谨慎实用,用不好会影响到性能 Django中间件的定义: 二 中间件有什么用 如果你想修改请求,例如被传送到view
阅读全文
摘要:1 会话跟踪技术 什么是会话跟踪 我们需要先了解一下什么是会话!可以把会话理解为客户端与服务器之间的一次会晤,在一次会晤中可能会包含多次请求和响应。例如你给10086打个电话,你就是客户端,而10086服务人员就是服务器了。从双方接通电话那一刻起,会话就开始了,到某一方挂断电话表示会话结束。在通话过
阅读全文
摘要:1 校验字段功能 针对一个实例:注册用户讲解。 模型:models.py 模版文件 视图函数: 2 渲染标签功能 渲染方式1 渲染方式2 渲染方式3 3 渲染错误信息功能 视图 模板 4 组件的参数配置 5 局部钩子 6 全局钩子
阅读全文
摘要:1 Django的分页器(paginator)简介 在页面显示分页数据,需要用到Django分页器组件 from django.core.paginator import Paginator 2 应用View层 3 模版层 index.html 4 扩展
阅读全文
摘要:一 什么是Ajax AJAX(Asynchronous Javascript And XML)翻译成中文就是“异步Javascript和XML”。即使用Javascript语言与服务器进行异步交互,传输的数据为XML(当然,传输的数据不只是XML,现在更多使用json数据)。 同步交互:客户端发出一
阅读全文
摘要:一 QuerySet对象 1.1可切片 使用Python 的切片语法来限制 记录的数目 。它等同于SQL 的 和 子句。 不支持负的索引(例如 )。通常, 的切片返回一个新的 —— 它不会执行查询。 1.2可迭代 1.3惰性查询 是惰性执行的 —— 创建 不会带来任何数据库的访问。你可以将过滤器保持
阅读全文
摘要:1 ORM字段 AutoField int自增列,必须填入参数 primary_key=True。当model中如果没有自增列,则自动会创建一个列名为id的列。 IntegerField 一个整数类型,范围在 2147483648 to 2147483647。 CharField 字符类型,必须提供
阅读全文
摘要:一 创建模型 实例:我们来假定下面这些概念,字段和关系 作者模型:一个作者有姓名和年龄。 作者详细模型:把作者的详情放到详情表,包含生日,手机号,家庭住址等信息。作者详情模型和作者模型之间是一对一的关系(one to one) 出版商模型:出版商有名称,所在城市以及email。 书籍模型: 书籍有书
阅读全文
摘要:一 ORM简介 查询数据层次图解:如果操作mysql,ORM是在pymysq之上又进行了一层封装 MVC或者MTV框架中包括一个重要的部分,就是ORM,它实现了数据模型与数据库的解耦,即数据模型的设计不需要依赖于特定的数据库,通过简单的配置就可以轻松更换数据库,这极大的减轻了开发人员的工作量,不需要
阅读全文
摘要:一 模版简介 你可能已经注意到我们在例子视图中返回文本的方式有点特别。 也就是说,HTML被直接硬编码在 Python代码之中。 尽管这种技术便于解释视图是如何工作的,但直接将HTML硬编码到你的视图里却并不是一个好主意。 让我们来看一下为什么: 对页面设计进行的任何改变都必须对 Python 代码
阅读全文
摘要:1 视图函数 一个视图函数,简称视图,是一个简单的Python 函数,它接受Web请求并且返回Web响应。响应可以是一张网页的HTML内容,一个重定向,一个404错误,一个XML文档,或者一张图片. . . 是任何东西都可以。无论视图本身包含什么逻辑,都要返回响应。代码写在哪里也无所谓,只要它在你的
阅读全文
摘要:一 Django中路由的作用 URL配置(URLconf)就像Django 所支撑网站的目录。它的本质是 URL与要为该URL调用的视图函数之间的映射表 ;你就是以这种方式告诉Django,对于客户端发来的某个URL调用哪一段逻辑代码对应执行 典型的例子: 二 简单的路由配置 正则表达式:一个正则表
阅读全文
摘要:一 MVC与MTV模型 1.1 MVC Web服务器开发领域里著名的MVC模式,所谓MVC就是把Web应用分为模型(M),控制器(C)和视图(V)三层,他们之间以一种插件式的、松耦合的方式连接在一起,模型负责业务对象与数据库的映射(ORM),视图负责与用户的交互(页面),控制器接受用户的输入调用模型
阅读全文