django实现web接口的步骤(包含路由、视图、模型)+ubuntu部署 uwsgi
一、 文字概述
测试环境
第一阶段:创建django文件
1.vscode中确保安装了python与django插件
2.建立虚拟python环境:
3.选择python解释器:
4.在虚拟环境中下载django包:
5.建立文件:
6.修改settings.py文件配置(设置访问权限,添加app部件)
第二阶段:测试
7.编写views.py视图文件
8.编写uels.py文件
9.运行程序
10.网页运行查看结果
---------数据库模型---------
1.新建一个.py文件,文件中编写创建一个数据库模型
2.生成迁移文件并应用到数据库当中
3.测试数据库运行正常能够添加数据
4.views.py编写,实现一个增加学生基本信息的接口
5.urls.py中增加路由信息
6.浏览器中测试
部署环境(Ubuntu系统 使用uwsgi)
1.安装uwsgi(sudo apt install uwsgi)
2.将在vscode中创建的文件复制转移到ubuntu中
3.将文件分离,工程文件与项目文件分开,确保两边的python环境一致(分开方便调 整,若Ubuntu中的python与django中一致则跳过)
4.修改wsgl.py文件,修改项目文件中的python环境
5.编写uwsgl.ini配置文件
6.启动uwsgl服务
7.安装nginx
8.修改文件
9.创建并编写my.conf文件启动不同的服务
10.启动nginx(sudo systemctl restart nginx)
11.启动uwsgi
12.测试是否成功
二、详细步骤(带图)
测试环境
第一阶段:创建django文件
1.vscode中确保安装了python与django插件
2.建立虚拟python环境:
2.1在想要的位置新建一个普通的文件夹
2.2用VSCode中打开
2.3选择新建终端
2.4powershall(终端)中输入:
python -m venv pyVenvTest
(pyVenvTest 根据自己需求进行修改,这里用的是Django)
在终端输入python -m venv Django后,在左边生成对应的目录
3.选择python解释器:
点击设置->控制面板->python:Select Interpreter ->选择解释器路径->浏览->选择当前路径下Scripts中的python.exe(下次新建终端即可自行加载虚拟环境)
设置中选择命令面板
当前路径下Scripts中的python.exe
关闭当前终端,新建立打开一个终端就会自动加载Python虚拟环境
加载成功,如图所示,部分情况左边会显示蓝点跟绿色的Django
可能会出现的问题
无法加载文件 D:\pythonStudy\venv_test\Scripts\Activate.ps1,因为在此系统上
https:/go.microsoft.com/fwlink/?LinkID=135170 中的 about_Execution_Policies。
所在位置 行:1 字符: 3
解决方案
使用管理员身份运行 PowerShell,并输入 set-executionpolicy remotesigned ,再输入“y”回车确认
4.在虚拟环境中下载django包:
pip install django (根据下载速度可以选择其他的镜像)
清华镜像:pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
这个是不使用镜像,直接下载的演示
5.建立文件:
建立对应的工程project,进入创建好的project的目录下建立需要的app
django-admin.exe startproject week (根据需要创建对应的名字,这里使用week作为示范)
django-admin.exe startapp hello
创建week(左边目录会出现对应的week文件夹)
创建hello部件(左边会出现hello部件)
6.修改settings.py文件配置(设置访问权限,添加app部件)
第二阶段:测试
7.编写views.py视图文件
写一个hello world跟加法
注意记得保存
8.编写uels.py文件
路由(在网页通过这个才能实现我们在视图文件中所实现的函数)
注意添加导入文件 from hello(你的部件名字)import views as hello_views (帮助找到对应的文件)
在urlpatterns中输入hello_views. 后面没有显示出可选,一般就是导入文件编写有错误
写完,记得保存
9.运行程序
首先确保进入到前面所创建的对应文件夹,执行下面语句
python manage.py runserver 0.0.0.0:8000
点击跳转到网页
10.网页运行查看结果
成功进入网页
如若进入失败可以更换为下面这段
python manage.py runserver 8000
运行hello接口
成功显示
执行相加接口
结果显示
到目前位置一个简单的Django程序就执行完了
---------数据库模型---------
1.新建一个.py文件,文件中编写创建一个数据库模型
models.py文件中创建一个student数据库模型
2.生成迁移文件并应用到数据库当中
python manage.py makemigrations
python manage.py migrate
3.测试数据库运行正常能够添加数据
4.views.py编写,实现一个增加学生基本信息的接口
5.urls.py中增加路由信息
6.浏览器中测试
部署环境(Ubuntu系统 使用uwsgi)
1.安装uwsgi(sudo apt install uwsgi)
2.将在vscode中创建的文件复制转移到ubuntu中
可以开启文件共享或者直接将文件拖进去(具体看虚拟机配置)
3.将文件分离,工程文件与项目文件分开,确保两边的python环境一致(分开方便调整,若Ubuntu中的python与django中一致则跳过)
Ubuntu在需要的文件目录下下载django
更新python
4.修改wsgl.py文件,修改项目文件中的python环境
修改python指向文件(需要python的版本一致),路径根据自己的文件修改,后面lib64开始基本都是一致的(不同就ls,一般只有一个文件)
5.编写uwsgl.ini配置文件
6.启动uwsgl服务
uwsgi --ini uwsgi.ini
以下进行测试
在django环境下运行uwsgi --ini uwsgi.ini(开启命令与在vscode中一致)
这时可以测试能否运行成功
7.安装nginx
8.修改文件
在下载的week17目录下进入到/etc/nginx (后面一步有进入教程)
将nginx.conf文件62行注释
9.创建并编写my.conf文件启动不同的服务
在该目录下/etc/nginx/conf.d进行创建(只读就用sudo升级权限)(后面有进入路径截图)
进入路径
10.启动nginx(sudo systemctl restart nginx)
sudo systemctl restart nginx
11.启动uwsgi
在django环境下运行
uwsgi --ini uwsgi.ini
12.测试是否成功
三、总结
注意事项:
文件目录,一定要在对应的目录下做对应的事情,接口跟数据库语句注意格式跟逻辑,部署到ubuntu中的时候,网路连接设置成NAT模式共享电脑ip。整个文件注意python的版本,不同会报错,使用对应的功能一定要启动命令。