1、下载安装
Django框架是使用python语言开发的,因此可以直接使用pip进行安装:
pip install django
可以指定安装版本
我使用的python 3.8 选择的django 3.1.7(推荐最新安装django3.2版本,可长久支持)
安装后验证成功:
python -m django --version
2、创建django框架
创建项目:
django-admin startproject 项目名
项目名自己命名,注意避开常用关键字
age:
django-admin startproject oneMyweb
创建好后自动生成框架文件:
自动生成的文件如上图所示
根目录下的文件manage.py
是用于项目管理的,通过此文件来执行管理操作,因此最里面的自动生成的文件不能随意更改名称,因为manage会调用它们。
setting.py
文件是django项目的配置文件,包含了很多配置项,内饰与scrapy框架中的setting
urls.py
文件是django框架得到前端http请求后,执行对应的函数对应关系。
wsgi.py
文件:
首先要明白:wsgi – 是pyhton组织制定的web服务网关接口规范,简称wsgi 遵循wsgi规范的 web后端系统, 我们可以理解为 由两个部分组成
wsgi web server
和wsgi web application
它们通常是运行在一个python进程中的两个模块,或者说两个子系统。
wsgi web server
接受到前端的http请求后,会调用wsgi web application
的接口(
比如函数或者类方法)方法,由wsgi web application
具体处理该请求。然后再把处理结果返回给 wsgi web
server, wsgi web server再返回给前端。
如图所示
这两个子系统有各自负责的重点。
wsgi web server
负责 提供高效的http请求处理环境,可以使用多线程、多进程或者协程的机制。http 请求发送到
wsgi web server
,wsgi web server
分配 线程或者进程或者 轻量级线程(协程),然后在
这些 线程、进程、或者协程里面,去调用执行wsgi web application
的入口代码。
wsgi web application
被调用后,负责 处理 业务逻辑。 业务逻辑的处理可能非常复杂, wsgi web
application 需要精心的设计来正确处理。
django是
wsgi web application
的框架,它只有一个简单的单线程 wsgi web server。 供调试时使用。产品正式上线运行的时候,通常我们需要高效的
wsgi web server
产品,比如
gunicorn,uwsgi,cherrypy等,结合Django ,组成一个高效的 后端服务。
所以这个 wsgi.py
就是 提供给wsgi web server
调用 的接口文件,里面的变量application对应对象实现了wsgi入口,供wsgi web server调用 。
django2.x版本里只有一个wsgi.py文件,而django3.x版本中添加了一个asgi.py文件。
这里的asgi.py
文件是wsgi.py的扩展:
WSGI是基于HTTP协议模式的,不支持WebSocket,而ASGI的诞生则是为了解决Python常用的WSGI不支持当前Web开发中的一些新的协议标准。同时,ASGI对于WSGI原有的模式的支持和WebSocket的扩展,即ASGI是WSGI的扩展。
3、运行django
首先进入项目根目录,或则是pycharm的终端
输入如下命令:
python manage.py runserver
打开浏览器 输入运行后给予的本机ip,看到如下图片,即取得成功。。。
4、创建app
app是指python的一个应用包、实现各种功能
python manage.py startapp 包名
常用django命令
>django-admin.py help
Type 'django-admin.py help <subcomm
Available subcommands:
[django]
check 检查Django项目的完整性
compilemessages 编辑语言文件
createcachetable
dbshell 进入Django dbshell
diffsettings 查看你的配置和Django的默认配置有和不同
dumpdata 导出数据
flush 清空数据库
inspectdb
loaddata 导入数据
makemessages 创建语言文件
makemigrations 生成数据库同步脚本
migrate 同步数据库
runserver 运行开发服务器
sendtestemail
shell 进入django shell
showmigrations 查看生成数据库的同步脚本
sqlflush 查看生成清空数据库的脚本
sqlmigrate 查看数据库同步的sql语句
sqlsequencereset
squashmigrations
startapp 创建一个app
startproject 创建一个项目
test
testserver