一、Django介绍
1、简介
Django是Python语言中的一个web框架,并遵循MVC设计。Python语言中主流的web框架有Django、Tornado、Flask 等多种,Django相较与其它WEB框架,其优势为:大而全,框架本身集成了ORM、模型绑定、模板引擎、缓存、文件管理、认证权限Session等功能,是一个全能型框架,拥有自己的Admin数据管理后台,第三方工具齐全,性能折中。Django的主要目的是简便、快速的开发数据库驱动的网站。它强调代码复用,多个组件可以很方便的以"插件"形式服务于整个框架,Django有许多功能强大的第三方插件,你甚至可以很方便的开发出自己的工具包。这使得Django具有很强的可扩展性。它还强调快速开发和DRY(Do Not Repeat Yourself)原则。
缺点:功能太多,数据分表复杂,高性能扩展复杂。
Django 是开源的!
2、安装
-
pip安装:在cmd命令窗口中,输入:
pip install django
-
pycharm安装:在file >> settings >> project >> project interpreter 中 搜索 django,进行安装
-
下载安装包安装:
在官网:https://www.djangoproject.com/download/ , 下载 django-master.tar,解压后,在解压目录中 运行 cmd(或者在cmd中切换到解压目录),然后通过输入命令:
python setup.py install
3、文档
官方文档的链接在:https://docs.djangoproject.com/en/2.2/ ,
点击页面右下角的 language 按钮,可以选择 zh-hans ,显示中文,只有部分页面有中文翻译
点击页面右下角的Documentation version,可以选择版本
二、Django相关知识学习
1、Django结构
2、相关术语和规范
-
B/S和C/S
Django是用于开发B/S架构的软件的,软件主要分为B/S架构和C/S架构:
-
B/S:全称Browser/Server(浏览器/服务器)
-
C/S:全称Client/Server(客户端/服务器)
-
-
MVC
MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。其核心思想是分工、解耦,让不同的代码块之间降低耦合,增强代码的可扩展性和可移植性,实现向后兼容。
-
M:Model,主要封装对数据库层的访问,对数据库中的数据进行增、删、改、查操作。
-
V:View,用于封装结果, 负责把数据格式化后以html呈现给用户。
-
C:Controller,用于接收请求,处理业务逻辑,与Model和View交互,返回结果。
-
MTV
Django虽然循MVC设计,但是在Django中,控制器接受用户输入的部分由框架自行处理,所以 Django 里更关注的是模型(Model)、模板(Template)和视图(Views),称为 MTV模式:
-
M: 代表模型(Model),即数据存取层。 该层处理与数据相关的所有事务: 如何存取、如何验证有效性、包含哪些行为以及数据之间的关系等。负责和数据库交互,进行数据处理
-
T: 代表模板(Template),即表现层。 该层处理与表现相关的决定: 如何在页面或其他类型文档中进行显示。
-
V: 代表视图(View),与MVC中的C功能相同,即业务逻辑层。 该层包含存取模型及调取恰当模板的相关逻辑。 你可以把它看作模型与模板之间的桥梁。
-
-
ORM
对象关系映射(英语:(Object Relational Mapping,简称ORM,或O/RM,或O/R mapping),是一种程序技术,用于实现面向对象编程语言里不同类型系统的数据之间的转换。从效果上说,它其实是创建了一个可在编程语言里使用的–“虚拟对象数据库”。
ORM方法论基于三个核心原则:
-
简单:以最基本的形式建模数据。
-
传达性:数据库结构被任何人都能理解的语言文档化。
-
精确性:基于数据模型创建正确标准化的结构。
ORM是随着面向对象的软件开发方法发展而产生的。用来把对象模型表示的对象映射到基于SQL 的关系模型数据库结构中去。这样,我们在具体的操作实体对象的时候,就不需要再去和复杂的 SQ L 语句打交道,只需简单的操作实体对象的属性和方法。ORM技术是在对象和关系之间提供了一条桥梁,前台的对象型数据和数据库中的关系型的数据通过这个桥梁来相互转化。
-
三、Django学习途径