Django简介
Posted schut
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Django简介相关的知识,希望对你有一定的参考价值。
一、 前言
二、一般Web框架架构
三、MVC与MTV模型
四、Django的特点
五、Django的下载与安装
一、 前言
Django是一种基于Python的Web开发框架。借助Django,Python的程序开发人员只需要编写很少的代码,就可以轻松地完成一个正式网站所需要的大部分内容,并进一步开发出全功能的Web服务。
那么什么是Web开发?这个我们在前文中已经介绍了,Web开发指的是开发基于B/S架构,通过前后端的配合,将后台服务器的数据在浏览器上展现给前台用户的应用。比如将电子购物网站的商品数据在浏览器上展示给客户,在基于浏览器的学校系统管理平台上管理学生的数据等等。本文我们就开始浅浅地打开通向Django的大门,一起去了解和学习它。
二、 一般Web框架架构
如上图所示,大多数基于Python的web框架,如Django、tornado、flask、webpy都是在这个范围内进行增删裁剪的。例如Tornado用的是自己的异步非阻塞“WSGI”网关接口,Flask则只提供了最精简和基本的框架,Django则是直接使用了现成的WSGI,并实现了大部分功能,提供了大量的应用工具。
三、MTV与MVC模型
1. MVC模型
最早由Trygve Teenskaug
在1978年提出,上世纪80年代是程序语言Smalltalk的一种内部架构。后来MVC被其他领域借鉴,成为了软件工程中的一种软件架构模式。MVC把Web框架分为3个基础部分:
模型(Model):用于封装与应用程序的业务逻辑相关的数据及对数据的处理方法,是Web应用程序中用于处理应用程序的数据逻辑的部分,Model只提供功能性的接口,通过这些接口可以获取Model的所有功能。简单说,这个模块就是Web框架和数据库的交互层。
视图(View):负责数据的显示和呈现,是对用户的直接输出。
控制器(Controller):接受用户的输入调用模型和视图完成用户的请求。
这三个部分互相独立,但又相互联系,使得改进和升级界面及用户交互流程,在Web开发过程任务分配时,不需要重写业务逻辑及数据访问代码。
三个部分的关系示意图如下:
2. MTV模型
Django对传统的MVC设计模式进行了修改,将视图分成View模块和Template模块两部分,将动态的逻辑处理与静态的页面展现分离开。而Model采用了ORM技术,将关系型数据库表抽象成面向对象的Python类,将表操作转换成类操作,避免了复杂的SQL语句编写。MTV和MVC本质上是一样的。
M 代表模型(Model): 负责业务对象和数据库的关系映射(ORM)。
T 代表模板 (Template):负责如何把页面展示给用户(html)。
V 代表视图(View): 负责业务逻辑,并在适当时候调用Model和Template。
除了以上三层之外,还需要一个URL分发器,它的作用是将一个个URL的页面请求分发给不同的View处理,View再调用相应的Model和Template,MTV的响应模式如下所示:
未完,待续...
以上是关于Django简介的主要内容,如果未能解决你的问题,请参考以下文章