首页

4.2准备工作

关灯 护眼    字体:

上一章 目录 下一章




4.2.1  了解文件结构


项目的初始文件结构如下:

其中主要文件说明如下。

●  Pipfile与Pipfile.lock:Pipenv配置运行环境的文件,用来记录项目所需要的第三方库。这两个文件的使用在4.2.2小节会介绍。

●  answer文件夹下面的DataBaseManager.py:本项目的参考答案。读者在自己完成项目以后可以将自己的代码与参考代码进行对比。

●  bin文件夹下的generate_data.py:用来向数据库中插入初始数据。

●  main.py、static、templates、util  文件夹:其中是本项目网站的后台和前台相关的代码,读者不需要关心。

读者只需要修改your_code_here文件夹下面的DataBaseManager.py就能完成本项目。



4.2.2  搭建项目运行环境


在Python开发中,常使用pip来安装不同的第三方库。如果把所有第三方库全部安装到系统的Python环境中,则可能会导致系统环境不稳定。而且,如果两个不同的项目依赖于同一个第三方库的不同版本,那么处理冲突也非常麻烦。

virtualenv  是一个创建  Python  虚拟环境的工具,它可以为每一个  Python  项目创建不同的Python虚拟环境,各个环境之间互相隔离,从根本上解决了第三方库冲突的问题。

由于virtualenv命令的参数众多而且操作复杂,不利于初学者直接使用,因此需要使用一个更加简单的工具来管理virtualenv,本书使用Pipenv来实现这一目的。

Pipenv会自动调用virtualenv创建虚拟环境,并在虚拟环境中安装第三方库,所以使用Pipenv会大大简化Python项目的环境搭建工作。

1.安装Pipenv

安装Pipenv需要在Linux/macOS的终端或者Windows的DOS窗口中执行pip命令:

python3  -m  pip  install  pipenv

2.创建本项目所需要的Python环境

(1)安装完成后,通过命令行或者终端进入本项目所在的文件夹(例如:~/mongoredis/project_1)。

(2)进入后,执行如下命令就能创建本项目所需要的Python环境:

pipenv  install

(3)运行命令以后,Pipenv会自动读取Pipfile和Pipfile.lock这两个文件,从而知道需要安装哪些第三方库的什么版本。运行效果如图4-9所示。

图4-9  使用Pipenv  搭建Python虚拟环境极其简单

3.进入虚拟环境

(1)安装完成以后,根据提示执行以下命令:

pipenv  shell

(2)自动进入专门为本项目定制的虚拟环境,如图4-10所示。在图4-10中,方框框住的部分是本项目虚拟环境的名字,提示当前终端处于虚拟环境中。

图4-10  进入虚拟环境

提示:

虚拟环境提示有多种显示形式,这取决于终端的显示设置。所以,可能读者看到的与图4-10中所示的位置或者格式略有差异。

此时,如果使用的是“python3×××.py”命令,则调用的是虚拟环境中的Python  3,不会受系统环境的影响。

在本项目的开发过程中,请读者全程不要关闭当前这个终端窗口,本章涉及的所有命令都需要在这个窗口中执行。

提示:

如果不小心关闭了这个终端窗口,则需要执行命令重启虚拟环境。

如在macOS/Linux中,则需要执行以下两条命令进入项目文件夹并启动虚拟环境:

cd  ~/mongoredis/project_1

pipenv  shell

如在Windows中,则需要执行以下两条命令进入项目文件夹并启动虚拟环境:

cd  C:\project_1

pipenv  shell

关于Pipenv的详细使用说明,读者可以参考https://github/pypa/pipenv。



4.2.3  启动项目


设置好虚拟环境后,就可以启动网站了。

1.Linux/macOS系统

对于Linux/macOS系统,在虚拟环境中执行以下命令:

export  FLASK_APP=main.py

flask  run

其中,第1行代码添加环境变量,变量名为“FLASK_APP”,值为“main.py”;第2行代码通过flask启动网站。

2.Windows系统

对于Windows系统,按以下步骤来启动项目。

(1)在DOS窗口中以下执行命令:

set  FLASK_APP=main.py

flask  run

(2)运行效果如图4-11所示。

图4-11  启动网站

(3)打开浏览器,输入网址:http://127.0.0.1:5000,可以看到如图4-12所示的页面。

图4-12  项目初始化页面

此时,即使没有启动MongoDB,也可以看到页面上有三条测试数据。

●  单击“添加人员”按钮,会弹出“添加信息”对话框,但是添加的任何信息都不会出现在页面上,也不会被写入数据库中。

●  单击“编辑”按钮也能打开编辑信息对话框,但是对信息的任何修改都不会生效。

●  单击“删除”按钮无法删除当前的三条测试数据。

打开your_code_here文件夹下面的DataBaseManager.py文件,其中的代码如图4-13所示。

图4-13  DataBaseManager.py文件中的代码


本实例需要读者实现  DataBaseManager  类下面的不同方法,从而使人员管理系统可以正常工作。本实例中所有需要读者修改的地方都在代码的注释中进行了提示。




上一章 目录 下一章