本地环境运行
- 将仓库代码克隆到本地
git clone https://gitee.com/ncepu-bj/Python_RESTfulAPI_Codegen.git
- 使用Python开发IDE打开(Pycharm或者VSCode)
- 创建虚拟环境, 要求Python版本 >= 3.8(以anaconda创建为例)
conda create -n python_restfulapi_codegen python==3.8 -y
- 安装依赖库
pip install -r requirements.txt
-
运行根目录下的start.py, 将自动跳转进入WebUI页面进行相关的参数配置
-
WebUI首页配置
该页面主要对要使用代码生成器的数据库进行连接配置。
-
WebUI-实体表配置页
该页面需要选中并配置要生成代码的实体表。
-
WebUI-视图表配置页
该页面主要选中并配置要生成代码的视图 。
-
WebUI-数据库配置确认
该页面主要是对前面两步的配置进行预览并确认。
-
WebUI-要生成的目标基本接口项目配置
该页面主要配置要生成的代码的项目的基本配置,并选择是否需要保存此次配置信息,方便下次使用。 -
WebUI-生成代码
该页面主要为了显示生成日志,提供代码下载功能。
运行结束后,会默认生成dist文件夹以及dist中的dist_{sessionid}文件夹(找到最近创建时间的即可),文件夹下即为我们需要的目标项目代码。
线上部署运行
- 将项目代码上传至服务器(笔者习惯上传至/var/www)
- 切换当前目录到项目目录
cd /var/www/Python_RESTfulAPI_Codegen
- 创建虚拟环境,要求Python>=3.8
python3 -m venv venv
- 进入虚拟环境并安装相关依赖库
source /venv/bin/activate
pip install -r requirements.txt
- 修改start.py文件如下所示(以端口33333为例)
if __name__ == '__main__':
app.run(host='0.0.0.0', port=33333) # host 指定运行ip,本机则为127.0.0.1,若需要其他机器能访问,则使用0.0.0.0,为了线上版本正常提供服务应该使用后者
- 开放端口权限(以操作系统centos7为例)
firewall-cmd --add-port 33333/tcp --permanent
systemctl restart firewalld
- 创建日志文件夹和dist文件夹并给予写入权限
mkdir dist logs
chmod 777 dist logs
- 后台运行根目录下的start.py
nohup python start.py runserver > nohup 2>&1 &
- 浏览器访问服务器的ip+刚刚设置的端口(ip:33333),进入WebUI页面进行相关参数配置,操作与本地运行中的webUI介绍一致。
- 程序运行完毕后,可在webUI页面下点击代码下载,获取生成的项目代码压缩包。