2、DRF介绍
一、DRF介绍和安装
介绍
DRF,全称djangorestframework,它是Django的一个第三方app,是一个建立在Django基础之上的Web 应用开发框架,使用它可以快速的写出符合restful规范的接口,帮助我们缩减编写api接口的代码,更好的实现前后端分离项目的开发
安装
'''
安装DRF的前提是已经安装了Django
终端输入:pip3 install djangorestframework
或者在PyCharm里搜索djangorestframework安装
截止到目前为止,drf最新版本只支持django 2.x及以上版本
'''
使用
'''DRF本质就是Django的一个应用,所以我们需要去settings.py添加rest_framework应用'''
INSTALLED_APPS = [
...
'rest_framework'
]
'''
接下来就可以使用DRF提供的功能进行api接口开发了。在项目中如果使用rest_framework框架实现API接口,主要有以下三个步骤:
1 将请求的数据(如JSON格式)转换为模型类对象
2 操作数据库
3 将模型类对象转换为响应的数据(如JSON格式)
'''
二、DRF使用案例
使用apiviews和Response写接口
我们先去models.py文件创建一个表
class Book(models.Model):
name = models.CharField(max_length=32)
price = models.IntegerField()
# 创建完成记得执行数据库迁移命令,然后给表里填数据
然后去views.py写
from rest_framework.views import APIView # 导入APIView
from app01 import models # 导入models表
from rest_framework.response import Response
class BookView(APIView): # 继承APIView(实际上APIView就是继承了View)
def get(self, request): # 走get请求
book_list = models.Book.objects.all() # all惰性查询,查所有数据
l = [] # 定义一个列表
for book in book_list: # 将查询的所有数据循环遍历
l.append({'书名': book.name, '价格': book.price}) # 将遍历的数据添加到列表里
return Response(l) # 这个就是DRF的response,将数据返回给前端
最后去urls.py添加上路由接口
from app01 import views
urlpatterns = [
path('admin/', admin.site.urls),
path('books/', views.BookView.as_view()),
]
本文作者:黑影Poco
本文链接:https://www.cnblogs.com/poco/p/15244584.html
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步