了解虚拟环境,熟悉Django项目、manage.py的指令、配置文件。
使用Django框架有一个全面的认识,包括开发流程、基本概念要素。
创建自己的第一个Django项目——图书管理系统(BMSTest)。
编程语言 | 版本 |
---|---|
Python | 3.9.0 |
这篇博客安装教程挺详细的:Python环境安装教程
第三方库/框架 | 版本 | 说明 |
---|---|---|
Django | 3.1.2 | Web开发框架 |
virtualenv | 20.0.35 | 虚拟环境库 |
virtualenvwrapper-win | 1.2.6 | 虚拟环境扩展包(指令便捷) |
安装完Python,利用Pip工具来安装 Django框架、virtualenv
pip install Django
pip install virtualenv
如果要指定版本
pip install Django==3.1.2
pip install virtualenv==20.0.35
pip install virtualenvwrapper-win==1.2.6
可能默认的源安装第三库会有点慢,可以配置一下其他的镜像源。Pip安装第三方库网速慢(解决方案)
如果只想临时安装第三库快一点,可以临时使用其他镜像源。
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple Django==3.1.2
开发工具 | 版本 |
---|---|
Pycharm | 2020.2.3 |
Windows CMD | / |
以后大家可以安装一下PyCharm专业版来开发Django项目
如果在一台机器上,想开发多个不同的项目,需要用到同一个包的不同版本,如果还使用上面的命令,在同一个目录下安装或者更新,其它的项目必须就无法运行了,怎么办呢?
解决方案:虚拟环境。
那么什么是虚拟环境呢?
这里给大家举一个简单的例子,桌面上有一个word文件,我们打开修改这个文件,修改了一会之后发现还是原来的文件比较好,这个时候我想找回原来的文件就比较困难了。那么怎么办呢?就有这样一种解决方案,在修改文件之前,先复制一份,然后在副本文件里进行修改,这样即使发现修改有错,也不会影响原始文件。
虚拟环境其实就是对真实pyhton环境的复制,这样我们在复制的python环境中安装包就不会影响到真实的python环境。通过建立多个虚拟环境,在不同的虚拟环境中开发项目就实现了项目之间的隔离。
指令 | 举例 | 作用 |
---|---|---|
mkvirtualenv | mkvirtualenv -p python3 虚拟环境名称 | 创建虚拟环境 |
deactivate | deactivate | 退出虚拟环境 |
workon | workon | 查看虚拟环境 |
workon | workon 虚拟环境名称 | 使用虚拟环境 |
rmvirtualenv | rmvirtualenv 虚拟环境名称 | 删除虚拟环境 |
注意:
先退出:deactivate
再删除:rmvirtualenv 虚拟环境名称
在 cmd窗口 下创建python3虚拟环境 py_django:
mkvirtualenv -p python3 py_django
建议大家先创建一个 DjangoProject的文件夹 专门来学习、练习 Django项目。
注意:
创建的虚拟环境默认在 C:\Users\Administrator\Envs
, Administrator
代表我当前电脑使用的用户你们的可能在其他用户下,如需指定创建的虚拟环境的存放的路径,可以在电脑的系统环境变量中添加 WORKON_HOME
系统变量
首先进入 py_django 虚拟环境
workon py_django
然后pip安装Django
pip install django
最后查看是否安装成功
pip list
django-admin startproject 项目名称
例:
django-admin startproject BMSTest
利用 CMD 的 dir
命令来看一下项目是否创建成功
文件名 | 作用 |
---|---|
manage.py | 项目管理文件,通过它管理项目 |
BMSTest | 与项目同名的目录,此处为BMSTest |
__init__.py | 一个空文件,作用是这个目录BMSTest可以被当作包使用 |
asgi.py | Django3.0版本新出的异步功能模块 |
settings.py | 项目的整体配置文件 |
urls.py | 项目的URL配置文件 |
wsgi.py | 项目与WSGI兼容的Web服务器入口 |
在 Pycharm
左下角找到 Terminal
选项并打开
然后利用 workon
命令进入虚拟环境
PyCharm的Terminal终端跟CMD窗口是一样的。
在Terminal终端下输入指令创建book应用
python manage.py startapp book
然后刷新或者等待一下,PyCharm就会显示你创建的应用
文件夹/文件 | 作用 |
---|---|
__init__.py | 是一个空文件,表示当前目录book可以当作一个python包使用 |
migrations | 数据库迁移文件夹 |
admin.py | 跟网站的后台管理相关 |
apps.py | Django的生成app(应用)名称的文件 |
models.py | 数据库操作相关 |
tests.py | 用于开发测试用例,在实际开发中会有专门的测试人员 |
views.py | 接收浏览器请求,进行处理,返回页面相关 |
在 BMSTest
下的 setting.py
文中中找到 INSTALLED_APPS
,并在其后面添加刚刚创建的Django应用( book
)。
在开发阶段,为了能够快速预览到开发的效果,Django提供了一个纯python编写的轻量级web服务器,仅在开发阶段使用。
在 PyCharm Terminal
终端中输入如下指令运行服务器:
python manage.py runserver ip:端口
例:
python manage.py runserver
可以不写IP和端口,默认IP是127.0.0.1,默认端口为8000。
点击蓝色网址或者复制网址在浏览器打开就可以在浏览器显示Django项目默认的首页了。
在 PyCharm Terminal
终端上按住 Ctrl + C
就可结束服务器
还是在 BMSTest
项目下 setting.py
中找到 LANGUAGE_CODE
、TIME_ZONE
,并设置成:
LANGUAGE_CODE = 'zh-hans' # 配置中文语言
TIME_ZONE = 'Asia/Shanghai' # 设置中国时区
设置完了再运行服务器,Django项目的首页就变成中文了。
新建文件夹X
大自然用数百亿年创造出我们现实世界,而程序员用几百年创造出一个完全不同的虚拟世界。我们用键盘敲出一砖一瓦,用大脑构建一切。人们把1000视为权威,我们反其道行之,捍卫1024的地位。我们不是键盘侠,我们只是平凡世界中不凡的缔造者 。