一、Django是一个开放源代码的Web应用框架,由Python写成。采用了MTV的框架模式,即模型M,视图V和模版T。它最初是被开发来用于管理劳伦斯出版集团旗下的一些以新闻内容为主的网站的,即是CMS(内容管理系统)软件。并于2005年7月在BSD许可证下发布。这套框架是以比利时的吉普赛爵士吉他手Django Reinhardt来命名的。
二、核心组件有
用于创建模型的 对象关系映射
为最终用户设计的完美管理界面
一流的 URL 设计
设计者友好的模板语言
缓存系统。
三、因为Java的关系,所以在学习django的时候。存在很多不一样的地方,但是大部分的开发架构基本上差不多的。架构上面还是存在着一些区别的,主要的地方在于:
1、模板方式:Django:MTV,Java:MVC。其实Django和jsp柑橘差不多,都是可以嵌入其他语言开发的一中方式。
2、Django和spring的大体差异,Django有点像使用springboot做template的方式去做页面开发。目前spring更多使用restful的方式开发了,所以这里也存在一定区别
3、路由匹配规则:Django采用的是正则的方式进行逐级的解析,并且可以反解析。spring,则采用固定方式。
4、项目层级:Django以项目-->应用,spring以项目-->模块。大体上面差不多。
5、难易程度:由于语言的关系,Python在做对象管理、映射、视图管理等上面都会存在冗余的情况,而且杂乱。当然因为Python的最小单位不是class的原因导致。相比于spring的架构,以及生态,总体感觉spring更适用于对象的IOC。
6、解耦程度:从单体项目上面来说,差不多。分布式的话,应用之间的交互,springcloud,有独立的处理机制。Django的处理方式不算友好。
四、关于Django的相关配置以及说明
1、Django的安装
pip install django=='version'(不写version,默认版本)
2、常见命令:
1)创建项目
django-admin startproject 'name'
2)创建应用(进入项目目录后创建)
python manage.py startapp 'name'
3)生成迁移文件
python manage.py makemigrations
4)执行迁移文件(同步到数据库)
python manage.py migrate
5)创建管理员账户
python manage.py createsuperuser
6)运行项目
python manage.py runserver 'port'
7)shell执行
python manage.py shell
3、项目目录结构
4、文件说明:
1)settings.py(项目配置)说明:
a、debug使用配置
DEBUG = True ALLOWED_HOSTS = []
备注:如果DEBUG = False,则需要配置ALLOWED_HOSTS。["*"]为所有可以访问。
b、安装APP
新增应用加入到箭头处,箭头以上为默认。箭头为项目配置。
注意:在不使用迁移文件的时候,是可以不用配置的。如果存在使用迁移文件的情况,就必须要要配置应用。