Django介绍
1.简介
Django,发音为[`dʒæŋɡəʊ],是用python语言写的开源web开发框架,并遵循MVC设计。劳伦斯出版集团为了开发以新闻内容为主的网站,而开发出来了这个框架,于2005年7月在BSD许可证下发布。这个名称来源于比利时的爵士音乐家DjangoReinhardt,他是一个吉普赛人,主要以演奏吉它为主,还演奏过小提琴等。由于Django在近年来的迅速发展,应用越来越广泛,被著名IT开发杂志SDTimes评选为2013SDTimes100,位列"API、库和框架"分类第6位,被认为是该领域的佼佼者。
Django的主要目的是简便、快速的开发数据库驱动的网站。它强调代码复用,多个组件可以很方便的以"插件"形式服务于整个框架,Django有许多功能强大的第三方插件,你甚至可以很方便的开发出自己的工具包。这使得Django具有很强的可扩展性。它还强调快速开发和DRY(DoNotRepeatYourself)原则。
2.特点
1)重量级框架
对比Flask框架,Django原生提供了众多的功能组件,让开发更简便快速。
-
提供项目工程管理的自动化脚本工具
-
数据库ORM支持(对象关系映射,英语:Object Relational Mapping)
-
模板
-
表单
-
Admin管理站点
-
文件管理
-
认证权限
-
session机制
-
缓存
2)MVT模式
有一种程序设计模式叫MVC,其核心思想是分工、解耦,让不同的代码块之间降低耦合,增强代码的可扩展性和可移植性,实现向后兼容。
MVC的全拼为Model-View-Controller,最早由TrygveReenskaug在1978年提出,是施乐帕罗奥多研究中心(Xerox PARC)在20世纪80年代为程序语言Smalltalk发明的一种软件设计模式,是为了将传统的输入(input)、处理(processing)、输出(output)任务运用到图形化用户交互模型中而设计的。随着标准输入输出设备的出现,开发人员只需要将精力集中在业务逻辑的分析与实现上。后来被推荐为Oracle旗下Sun公司Java EE平台的设计模式,并且受到越来越多的使用ColdFusion和PHP的开发者的欢迎。现在虽然不再使用原来的分工方式,但是这种分工的思想被沿用下来,广泛应用于软件工程中,是一种典型并且应用广泛的软件架构模式。后来,MVC的思想被应用在了Web开发方面,被称为Web MVC框架。
MVC模式说明
- M全拼为Model,主要封装对数据库层的访问,对数据库中的数据进行增、删、改、查操作。
- V全拼为View,用于封装结果,生成页面展示的html内容。
- C全拼为Controller,用于接收请求,处理业务逻辑,与Model和View交互,返回结果。
Django的MVT
- M全拼为Model,与MVC中的M功能相同,负责和数据库交互,进行数据处理。
- V全拼为View,与MVC中的C功能相同,接收请求,进行业务处理,返回应答。
- T全拼为Template,与MVC中的V功能相同,负责封装构造要返回的html。
注:差异就在于黑线黑箭头标识出来的部分
3.Django学习资料
- 1.官方网站:https://www.djangoproject.com/
- 2.Github源码:https://github.com/django/django
- 3.Django1.11版英文文档:https://docs.djangoproject.com/en/1.11/
- 4.Django1.11版中文文档:https://yiyibooks.cn/xx/Django_1.11.6/index.html
- 5.Django Book 教程:https://djangobook.com/
- 6.Tange With Django 教程:https://www.tangowithdjango.com/book17/
4.创建Django项目
步骤
- 创建Django项目
django-admin startproject 项目名称 - 创建子应用
python manager.py startapp 子应用名称
5.创建工程
在使用Flask框架时,项目工程目录的组织与创建是需要我们自己手动创建完成的。
在django中,项目工程目录可以借助django提供的命令帮助我们创建。
1.创建
创建工程的命令为:
django-admin startproject 工程名称
例如:想要在桌面的code目录中创建一个名为stockmanager的项目工程,可执行如下命令:
cd ~/Desktop/Code
django-admin startproject stockmanager
执行后,会多出一个新目录名为stockmanager,此即为新创建的工程目录。
2.工程项目说明
查看创建的工程目录,结构如下
- 与项目同名的目录,此处为stockmanager。
- settings.py是项目的整体配置文件。
- urls.py是项目的URL配置文件。
- wsgi.py是项目与WSGI兼容的Web服务器入口。
- manage.py是项目管理文件,通过它管理项目。
3.运行开发服务器
在开发阶段,为了能够快速预览到开发的效果,django提供了一个纯python编写的轻量级web服务器,仅在开发阶段使用。
运行服务器命令如下:
python manage.py runserver ip:端口
或:
python manage.py runserver
可以不写IP和端口,默认IP是127.0.0.1,默认端口为8000。
启动后可见如下信息:
在浏览器中输入网址“127.0.0.1:8000”便可看到效果。
- django默认工作在调式Debug模式下,如果增加、修改、删除文件,服务器会自动重启。
- 按ctrl+c停止服务器