基于Django创建一个WEB后端框架(DjangoRestFramework+MySQL)流程

一、Django项目初始化

1.创建Django项目

Django-admin startproject 项目名

2.安装 djangorestframework

pip install djangorestframework

解释:

Django REST Framework (DRF) 是基于 Django 框架的一个强大的 Web API 框架,提供了多种工具和库来构建 RESTful API。它为我们提供了许多开箱即用的功能,例如序列化、验证、文档化、渲染和视图,使我们能够快速构建出功能强大的 Web API。

3.注册应用app

INSTALLED_APPS 配置相当于注册了Django项目中需要使用的应用。通过将应用名称添加到 INSTALLED_APPS 列表中,Django会识别并加载这些应用,使其功能在项目中可用。

4.修改数据库配置

Django自带一个sqlite小型数据库但是其写操作是全数据库级别的锁,这意味着在同一时间只有一个写操作可以执行。对于高并发的写操作场景,性能会受到限制。我们将其切换至常规使用的Mysql数据库并在Mysql中创建对应的数据库

下面的一步是为了导入pymysql将pymysql适配为mysqldb的接口

二、构建模型

1.创建app

Python manage.py startapp appname

执行之后就会生成对应的app模块了

接着要在settings.py模块中注册app

2.创建模型

models.Model 是 Django 框架中的一个基类,所有自定义的模型类都需要继承它。通过继承 models.Model,Django 可以为你的模型提供一系列功能,例如将类映射到数据库表、自动管理数据库迁移、提供 ORM(对象关系映射)接口等。

3.创建数据迁移文件以及进行数据迁移(至数据库也就是通过定义上述模型类执行相关命令在数据库中建表)

Python manage.py makemigrations #创建数据迁移文件

Python manage..py migrate #进行数据迁移

命令执行成功之后数据库模型(表)就创建出来了

三、体验Django提供的管理界面 注册后的模型可以在管理界面上增删改查

我们可以通过DjangoRDF自带的增删改查的前端交互页面

步骤:

在app的admin.oy文件下输入图片中的代码片段 将Article注册到admin控制台当中

接着创建一个超级用户登录模型管理界面

Python manage.py createsuperuser

创建好之后运行项目

Python manage.py runserver 127.0.0.1:port port可以自己设置端口号

浏览器输入http://127.0.0.1:8000/admin/即可进入到管理界面

四、创建Restful风格api

1.创建api调用层

2.将请求映射文件注册到主URL配置当中

3.创建序列化器模块以便模型对象序列化后便于传输

4.创建接口并指定接口允许的请求方式

5.将接口注册到路由当中

这样一个接口就创建好可以正常调用了

测试一下

一个基本的Django后端框架就搭建好了

相关推荐
万邦科技Lafite33 分钟前
利用淘宝开放API接口监控商品状态,掌握第一信息
大数据·python·电商开放平台·开放api接口·淘宝开放平台
Hy行者勇哥2 小时前
Python 与 VS Code 结合操作指南
开发语言·python
大力水手(Popeye)3 小时前
Pytorch——tensor
人工智能·pytorch·python
会飞的灰大狼3 小时前
MyCAT完整实验报告
mysql·centos7
飞翔的佩奇7 小时前
【完整源码+数据集+部署教程】表盘指针检测系统源码和数据集:改进yolo11-CA-HSFPN
python·yolo·计算机视觉·数据集·yolo11·表盘指针检测
larance7 小时前
SQLAlchemy 的异步操作来批量保存对象列表
数据库·python
python_chai7 小时前
从数据汇总到高级分析,SQL 查询进阶实战(下篇)—— 分组、子查询与窗口函数全攻略
数据库·sql·mysql
搏博8 小时前
基于Python3.10.6与jieba库的中文分词模型接口在Windows Server 2022上的实现与部署教程
windows·python·自然语言处理·flask·中文分词
lxmyzzs9 小时前
pyqt5无法显示opencv绘制文本和掩码信息
python·qt·opencv
萧鼎10 小时前
Python pyzmq 库详解:从入门到高性能分布式通信
开发语言·分布式·python