『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/ 可以看到返回到内容。


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

相关推荐
清水白石0088 分钟前
NumPy 向量化实战指南:从原理到实践的性能革命
python·numpy
Coding茶水间20 分钟前
基于深度学习的猪识别系统演示与介绍(YOLOv12/v11/v8/v5模型+Pyqt5界面+训练代码+数据集)
图像处理·人工智能·python·深度学习·yolo·目标检测
X54先生(人文科技)40 分钟前
启蒙灯塔起源团预言—碳硅智能时代到来
人工智能·python·机器学习·语言模型
亓才孓1 小时前
[Spring测试]TestRestTemplate
java·后端·spring
qq_24218863321 小时前
快速搭建跨环境检测服务的步骤
linux·开发语言·windows·python·macos
老迟聊架构1 小时前
系统性的理解分布式系统
后端·架构
JaydenAI1 小时前
[拆解LangChain执行引擎]三种持久化模式的差异
python·langchain
javaTodo1 小时前
Claude Code 之父的技巧分享:用"拉尔夫循环"让 AI 替你死磕
后端
董员外1 小时前
LangChain.js 快速上手指南:模型接入、流式输出打造基础
前端·javascript·后端
老赵全栈实战1 小时前
《从零搭建RAG系统第4天:问题向量化+Milvus检索匹配+结果优化》
python·ai编程