django作为一个python的开源项目发布,其web框架采用了mtv设计模式
在目前一些较为成熟的大型网站中有不少网站的应用基于django开发,django作为一个重量型的web框架提供了以下的功能
1:自助后台管理
2:优雅的url路由配置
3:可插拨的App
4:全套解决方案(session,orm,cache)
5:Dry
6:完善的文档
同时django也存在一些较为明显的缺点,如
:
1:系统紧耦合
2:自带的ORM功能不够强大
3:template功能比较弱
django采用mtv设计模式:
model层:负责程序数据的处理
template层:对应mvc的view层,负责展现model的数据
view层:对应mvc中的control层,负责应用逻辑控制,串连model层与template层
Django的安装
pip install django(没有安装pip的需要自行下载django)
安装好django后,可以创建第一个django项目了,如下图所示:
在终端中输入命令:django-admin startproject 项目名称
命令执行成功后将生成以下文件:
其中init.py为包标识文件,manage.py为应用管理工具文件,setting.py为全局配置文件,urls.py为路由配置文件
setting.py为核心配置文件,主要包含以下内容:
-数据库
-缓冲配置
-session配置
-静态文件配置
-用户自定义配置信息
创建项目后,对于django来说还需要创建应用App,所谓应用是独立于其它web框架所特有的概念,一个应用相当于一个模块,如oa模块,crm模块各分别对应一个应用,django的一个项目中允许包含多个应用,每个应用均为可插拨式设计,每一个应用是一个独立的目录,由一些基本文件组成,具体如下图所示将会成为一个django提供的app样版,同时带一个默认的后台管理功能
django 应用的创建
在manage.py文件所在目录下运行命令:
python manage.py startapp app模块名称
对于数据库的配置,django默认采用sqlite的数据库,可以通过对setting.py文件的修改来切换数据源
在setting.py中以下部分为对数据库的配置信息
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
}
在生产环境中通常对于安全性以及并发吞吐均会有一定的要求,可以通过修改配置修改为mysql数据或者其它类型的数据库,以mysql为例可将配置修改如下
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'test1',
'USER': 'root',
'PASSWORD': '434944800',
'HOST': 'localhost',
'PORT': '3306',
}
}
将数据库的连接配置好后,便可以开始建立后台的数据库建立用户等操作,这里以数据为test1为例
在django1.9后的版本中运行以下命令会同步数据库
python manage.py migrate
同步后将建立django默认的一些表,如下图所示
以上为django中默认建立的一些表
为了测试一下django自带的后台功能,我们再建立一个用户:
在终端中运行以下命令:
python manage.py createsuperuser将会建立一个用户用于进行后台管理
现在在终端中输入python manage.py runserver后看到以下内容表示django自带的开发型的web服务器已启动
在浏览器中输入地址打开查看到以下内容表示服务已正常运行
此时可以使用刚才建立的用于后台管理的用户访问http://localhost:8000/admin/
登录以后将可以看到django默认提供的管理界面
到此基于django的初步架设开完成。嘿嘿。