一、建立虚拟环境
目的:将项目的库与其他项目分离,在后续将项目部署到服务器,这也是必须的。
1、为新项目建一个目录,如:learning_log
2、在终端切换到这个目录,执行如下命令:(使用venv模块创建名为ll_env的虚拟环境)
python3 -m venv ll_env
二、激活虚拟环境
learning_log目录下 运行如下命令:
source ll_env/bin/activate
此时环境处于活动状态,可以在环境中安装包,并使用已安装的包。在ll_env中安装的包仅在该环境处于活动状态时才可用
要停止使用虚拟环境,可执行命令:deactivate
以下均在虚拟环境激活状态下进行
三、安装Django
激活虚拟环境后,执行如下命令安装Django
pip3 install django
四、在Django中创建项目
django-admin.py startproject learning_log .
django-admin.py startproject learning_log .
此处命令末尾处的句点让新项目使用合适的目录结构,这样开发完后可轻松的将应用程序部署到服务器.
建立名为learning_log的项目之后,同时自动创建了一个名为manage.py的文件,这是一个简单的程序,它接受命令并将其交给Django的相关部分去运行。通过这个命令来管理诸如使用数据库和运行服务器等任务.
新建的项目learning_log包含5个文件:asgi.py __init__.py settings.py urls.py wsqi.py
文件名 作用
__init__.py 将文件夹变为一个Python模块
settings.py 指定Django如何与你的系统交互及如何管理项目 ,在项目开发过程中修改一些设置,增加一些设置
urls.py 告诉Django应创建哪些网页来响应浏览器请求
wsqi.py Python 专用的 Web 服务器网关接口,它分为两部分"服务器(或网关)"和"应用程序(或应用框架)"。「服务器」,一般独立于应用框架,为应用程序运行提供环境信息和一个回调函数(Callback Function)。当应用程序完成处理请求后,透过回调函数,将结果回传给服务器。
asgi.py python3版本增加;具有异步功能的 Python web 服务器网关接口协议。能够处理多种通用的协议类型,包括 HTTP,HTTP2 和 WebSocket。WSGI
是基于 HTTP 协议模式的,不支持WebSocket
,而ASGI
的诞生则是为了解决 Python 常用的 WSGI 不支持当前 Web 开发中的一些新的协议标准(WebSocket、Http2 等)
五、创建数据库
Django将大部分与项目相关的信息都存储在数据库中,因此我们需要创建一个供Django使用的数据库
python3 manage.py migrate
执行结果:
六、查看项目
核实Django正确创建了项目,可使用命令runserver查看项目状态
python3 manage.py runserver
Django启动了一个名为development server的服务期,让你能够查看系统中的项目,了解其工作情况。如果你在浏览器中输入URL请求页面,该Django服务期将进行响应:生成合适的页面,并将其发送给浏览器
打开浏览器输入:http://127.0.0.1:8000/
关闭服务器:切换到终端窗口,按 Ctrl+C
注意:如果出现错误消息 That port is already in use(指定端口被占用),请执行命令 python3 manage.py runserver 8001,让Django使用另一个端口。