【保姆级教程】Django在windows系统下的配置(3000字细说)
看了几本Django的书,感觉书中对Django在windows系统3中的配置说的总有有一些不太明白的地方,自己做一个小教程也算是整理。
1.在指定文件夹初始化一个虚拟空间
进入指定文件夹,光标放到地址栏,输入cmd,点击回车,在该路径下打开cmd,输入
python -m venv ENV
新建一个虚拟空间,其中
python:使用python
-m:使用script脚本
venv:构建虚拟空间
ENV:虚拟空间名
执行命令后在执行命令的文件夹内生成一个叫ENV的文件夹,这就是我们的虚拟空间
2.激活虚拟空间
输入
ENV\Scripts\activate
激活虚拟空间
激活成功后我们的路径前应该有(空间名)
当我们想关闭虚拟空间时,输入
deactivate
3.安装Django
输入
pip install django
等待安装django
此时,ENV文件夹内有以下文件
Include中为空
Lib中存有site-package文件夹,包含pip,django,sql等库
Scripts中含有启动要用到的exe,bat文件。
pyvenv.cfg中是对环境的基本配置,包括python程序的绝对路径等。
4.在Django中创建项目
输入:
django-admin startproject test1
django-admin 是django的一个命令行管理工具,可以对项目进行操作,在这里我们使用startproject命令,新建了一个名为test1的项目。
ENV文件夹同级将出现一个名为test1的文件夹。
test1目录下出现了另一个test1目录和manage.py文件
manange.py文件用于接收命令交给django运行(类似于我们刚刚用的django-admin的作用,在python3中接下来这两个命令很大程度上是等价的)
test1中生成了如下5个文件
“init.py”:现在是空的,用于初始化
asgi.py:全称(Asynchronous Server Gateway Interface)与WSGI相对,是一套接口标准协议/规范,用于规范web服务器与python web或python框架之间连接,与WSGI的不同在于更好的支持异步的python应用与服务器之间的通信,在这里提供给开发者,可以按需进行设计,初学阶段用的不多。
settings.py:初学者开发中重要文件,设置Django如何与系统交互,如何管理项目。
urls.py:全称:uniform resource locator。统一资源定位符,在这里用来告诉Django应该创建哪些网页响应浏览器需求。
wsgi.py:全称:Python Web Server Gateway Interface,是同步的,python web服务器与python应用之间连接的,一套。接口标准协议/规范。
5.创建数据库
输入
cd test1
python manage.py migrate
cd test1;进入test1文件夹,因为我们的manage.py文件在test1文件夹里
python manage.py:运行mannage程序。这里我们刚刚讲了,它用于接收命令交给Django运行。
migrate:迁移的意思,用在数据库上意为修改,使用SQLite的新项目首次迁移数据库的时候,Django将新建一个数据库。
运行后test1文件家中出现了一个名为db.sqlite3的文件。
6.核实项目是否正确创建
6.1runserver 运行项目
输入
python manage.py runserver
使用runserver命令让项目运行
6.1.1端口占用报错的解决
中途可能出现报错
That port is already in use
这是因为端口被占用。可通过关闭占用端口程序或更换端口解决。
方法一:关闭占用端口程序
打开cmd,输入
netstat ano|findstr 8000
netstat:显示套接字内容
-ano:
a-all:显示关于套接字的所有内容
n-number:以数字形式显示地址和端口号
o-operate:显示拥有的与每个连接关联的进程
|:管道命令,将左边命令的参数作为右边命令的接口使用
findstr 8000:查找字符8000
如此操作会显示占用了8000端口的程序(国内一般是酷狗音乐,别问我怎么知道),记住该程序的pid 图中为9760
PID:Process Identification,进程识别符
输入
taskkill /pid 9760 /f
taskkill :终止进程的命令
/pid 9760:进程的pid
/f-force:强制执行
进程就会终结
方法二:更换Django runserver的端口
在我们的虚拟环境里输入:
python manage.py 8001
以此类推,还能更换为其他端口,直到端口更换成功为止
6.2打开对应网页
runserver成功后,将会显示如下信息
这代表项目在你计算机的对应端口上侦听请求,打开浏览区输入地址。
出现Django的小火箭表示大功告成。
将光标移动到cmd中按ctrl+c键退出。
7.创建app
在虚拟空间cm中输入
python manage.py startapp tests
创建一个名为tests的app
文件夹test下出现一个叫tests的文件夹,内有以下文件
migrations:数据迁移,内有一个空白的init文件
init:初始化
admin:创建用户
apps.py:储存app的基本信息
model.py:定义我们开发中要管理的文件
tests.py:放置测试
views.py:接受Web请求,并响应Web请求