
1.2.4 搭建Django的测试环境
本节基于Python虚拟环境搭建Django的测试环境,本次的实验环境为CentOS 7系统,后续许多测试Django源码中的类和函数的语句都在该虚拟环境的Python交互模式下进行。这里选用pyenv和pyenv-virtualenv工具构建Python的虚拟环境。
(1)安装这两个工具,直接从GitHub上下载源码即可:

(2)将相应的命令文件的所在路径加到系统环境变量PATH中:

在有了pyenv和它的虚拟环境管理揑件后,就可以安装相应版本的Python虚拟环境了。由于Django 2只支持Python 3,所以这里选择Python 3.8.6版本。由于直接使用pyenv install 3.8.6命令默认是从国外网站下载Python压缩包,速度较慢,所以建议从国内的Python镜像源上下载Python-3.8.6.tar.xz压缩包并放到pyenv的缓存目录下,再执行pyenv install 3.8.6命令。此时,pyenv会直接从缓存目录中获取该版本的Python压缩包并安装,这样能极大地提高安装速度。此外,在安装Python之前需要安装一些依赖包,具体的操作命令如下:

在安装Python环境之后,即可基于Python 3.8.6创建虚拟环境,并命名为django2-core-test:

(3)使用pyenv activate django2-core-test命令激活并进入该虚拟环境中:

(4)在该虚拟环境中安装Django 2的最新版本(2.2.16):

为了能操作MySQL数据库,这里还需要安装mysqlclient模块。注意,在安装mysqlclient模块之前,需要安装一些必要的依赖库。在CentOS 7系统上,只需执行yum install mysql-devel-y命令即可安装mysqlclient模块:

进入Python交互模式,导入Django模块,之后即可调用Django模块下的各种类和方法进行测试了。比如,通过django.__version__语句查看Django的版本信息:
