首先发生的是一些和 Django 有关(前期准备)的其他事情,分别是: 如果是 Apache/mod_python 提供服务,request 由 mod_python 创建的 django.core.handlers.modpython.ModPythonHandler 实例传递给 Django. 如果是其他服务器,则必须兼容 WSGI,这样,服务器将创建一个 django.core.handlers.wsgi.WsgiHandler 实例. 这两个类都继承自 django.core.handl…
一.准备虚拟环境 1)安装 virtualenv pip install virtualenv 2)virtualenvwrapper pip install virtualenvwrapper-win (windows 下 为:pip install virtualenvwrapper-win) 3)设置虚拟环境目录 默认创建的虚拟环境位于C:\Users\username\envs,可以通过环境变量 WORKON_HOME 来定制. 通过计算机-->属性-->高级系统设置-->环境变…
关于request与response 前面几个 Sections 介绍了关于 Django 请求(Request)处理的流程分析,我们也了解到,Django 是围绕着 Request 与 Response 进行处理,也就是无外乎“求”与“应”. 当请求一个页面时,Django 把请求的 metadata 数据包装成一个 HttpRequest 对象,然后 Django 加载合适的 view 方法,把这个 HttpRequest 对象作为第一个参数传给 view 方法.任何 view 方法都应该返…
流程 Django session源码流程 首先执行的是SessionMiddleware的init方法 import_module(settings.SESSION_ENGINE) 导入了一个 django.contrib.sessions.backends.db的包 将db中SessionStore 赋值给self.SessionStore 执行process_request 方法 获取存放于cookie中的session_id,赋值为session_key 实例化session仓库sess…
目录 一 什么是restful架构 二 Django REST framework简介 三 Django REST framework原理 四 Django REST framework源码流程 五 Django REST framework实现用户登录 一 什么是restful架构 1.起源 REST即表述性状态传递(英文:Representational State Transfer,简称REST)是Roy Fielding博士在2000年他的博士论文中提出来的一种软件架构风格.它是一种针对…
之前在网上看过一些介绍Django处理请求的流程和Django源码结构的文章,觉得了解一下这些内容对开发Django项目还是很有帮助的.所以,我按照自己的逻辑总结了一下Django项目的运行方式和对Request的基本处理流程. 一.Django的运行方式 运行Django项目的方法很多,这里主要介绍一下常用的方法.一种是在开发和调试中经常用到runserver方法,使用Django自己的web server:另外一种就是使用fastcgi,uWSGIt等协议运行Django项目,这里以uWSG…
接触Django这么久了,从来没有好好学习关于Django中的Request和Response对象.借着文件上传下载的相关工作,现在总结一下也不错. 当一个页面请求过来,Django会自动创建一个Request对象,匹配URLconf中对应的view方法,并将这个Request对象作为第一个参数传递给view方法.而view方法会经过一系列操作之后,返回一个Response对象,返回给客户端. 具体的Request对象的属性(attribute)有很多(除了seesion都说只读属性): Htt…
Django问卷调查项目思路流程: 1 后端思路 : 需求分析 ---- 找出各实体对应关系 ---- 设计model架构 ---- 统一资源封装 --- 提供资源API入口 ---- 设计项目实体功能 --- 通过API实现实体功能 --- 统一数据结构测试功能 2 项目流程 3 找出各实体之间的对应关系 项目之间实体主要有: 4 根据实体关系与实体功能设计模型 ​ 数据模型中包含实现实体功能的各种资源类,都是继承models.Model类,每个模型类的资源,关系键值决定了数据表的整体结构,因…
Django中间件的执行流程. 请求到达中间件之后,先按照正序执行每个注册中间件的process_reques方法,process_request方法返回的值是None,就依次执行, 如果返回的值是HttpResponse对象,不再执行后面的process_request方法,而是执行当前对应中间件的process_response方法, 将HttpResponse对象返回给浏览器.也就是说:如果MIDDLEWARE中注册了6个中间件,执行过程中,第3个中间件返回了一个 HttpResponse…
后端开发软件目录规范 一.Model from django.db import models # Create your models here. # 多表的设计 # 图书 作者 出版社 作者详情表 # 基表的创建主要是我们的字段都有共同的字段抽离 class BaseModel(models.Model): # 相同的字段 is_delete = models.BooleanField(default=False) create_time = models.DateTimeField(aut…