『Django』APIView基于类的用法

点赞 + 关注 + 收藏 = 学会了

本文简介

上一篇文章介绍了如何使用APIView创建各种请求方法,介绍的是通过函数的方式写接口。

本文要介绍 Django 提供的基于类(Class)来实现的 APIView 用法,代码写起来更简单。

APIView基于类的基础用法

首先了解一下类的写法。

我们基于上一讲的代码,在 blog/views.py 里新增一个 apiBlogs

python 复制代码
# blog/views.py

from rest_framework.views import APIView
from rest_framework.response import Response
from blog.models import Article
from .serializers import BlogListSerializer
from rest_framework.views import APIView

class apiBlogs(APIView):
    def get(self, request):
        try:
            blogs = Article.objects.all()
        except:
            return Http404
        serializer = BlogListSerializer(blogs, many=True)
        return Response(serializer.data, status=status.HTTP_200_OK)

在这个 apiBlogs 中,定义了一个 get 请求方法的处理逻辑,尝试获取 Article.objects.all() 的所有内容,获取到相关内容后再通过 return Response() 传回给客户端。

然后在 blog/urls.py 中定义这个路由。

python 复制代码
# blog/urls.py

from django.urls import path
from . import views

urlpatterns = [
  path("apiBlogs/", views.apiBlogs.as_view())
]

在浏览器访问 http://127.0.0.1:8000/api/blog/apiBlogs/ 可以看到返回到内容。


点赞 + 关注 + 收藏 = 学会了

相关推荐
小邓睡不饱耶31 分钟前
Spring Boot 3 + MyBatis-Plus 高性能持久层开发实战:从入门到调优
spring boot·后端·mybatis
家的尚尚签43 分钟前
高定木作企业实践:案例分享与成果展示
大数据·人工智能·python
无名之逆1 小时前
你可能不需要WebSocket-服务器发送事件的简单力量
java·开发语言·前端·后端·计算机·rust·编程
锅包一切1 小时前
一、C++ 发展与程序创建
开发语言·c++·后端·学习·编程
haosend2 小时前
极简小白Python教程-实现能基本看懂和简单编写代码
python·路由器·交换机·网络自动化
古城小栈2 小时前
后端视角:拆解春晚背后的高可用技术架构
后端·架构
码农小韩2 小时前
AIAgent应用开发——大模型理论基础与应用(六)
人工智能·python·提示词工程·aiagent·deepseek
一株菌子2 小时前
10.12 总结
开发语言·python
敏编程2 小时前
一天一个Python库:pyjwt - 安全地编码和解码JWT
python
心之语歌2 小时前
flutter provider 使用,状态管理更新跨组件数据共享
后端·flutter