首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

第 3 篇:实现博客首页文章列表 API

开发的异同时说过,django-rest-framework 开发和传统的开发方式没有什么不同,区别仅在于返回的数据格式不同而已。...这些过程 django 默认的视图函数在处理 HTTP 请求时是没有提供的,经过 api_view 装饰后的视图,则提供了上述全部功能。...HTTP 响应即可),通常在 RESTful API 的视图函数中我们都会返回这个类,不是 django 的 HTTP 响应类。...但是资源的序列化,框架是无法自动化完成的,框架提供了基本的序列化器,我们需要自定义序列化逻辑。所以,让我们来定义 PostListSerializer 序列化器,用它来序列化文章列表。...被序列化对象序列化后的数据是一个扁平的 Python 字典字典中的数据描述了这个对象资源。

98620
您找到你想要的搜索结果了吗?
是的
没有找到

Sentry 开发者贡献指南 - Django Rest Framework(Serializers)

Django Rest Framework Django Rest Framework 序列化程序用于处理进入 Sentry 的数据的输入验证和转换。...get_attrs 方法 当 Django Rest Framework 具有类似功能时,为什么要这样做? get_attrs 方法就是原因。它允许您执行批量查询不是多个查询。...在我们的示例中,我可以过滤我想要的 item,并使用 python 将它们分配给相关 item, 不是调用 ExampleTypes.objects.get(...) 多个 item。...在 attr 字典的情况下,key 是 item 本身。并且 value 是一个字典,其中包含要添加的属性的名称及其值。...attrs[item] = {'attribute_name': attribute} Serialize 方法 最后,您返回一个带有 json 可序列化信息的字典,该信息将与 response 一起返回

1.1K30

Django实践-10RESTful架构和DRF入门

文件的问题 django配置app中的静态文件步骤 Django多APP加载静态文件 django.short包参考: 中间件的应用 Django 前后端分离(REST Framework)...SOA是一个框架的方法,SaaS是一种传递模型。 通过SaaS传递Web服务并不需要SOA。 SaaS主要是指一个软件企业向其它企业提供软件服务。SOA一般是企业内部搭建系统的基础。...Start off by adding the following to your settings.py module: REST框架API的任何全局设置都保存在一个名为REST_FRAMEWORK...的配置字典中。...前后端分离的开发需要后端为前端、移动端提供API数据接口,API接口通常情况下都是返回JSON格式的数据,这就需要对模型对象进行序列化处理。

25121

不会DRF?源码都分析透了确定不来看?

官网:https://www.django-rest-framework.org/ drf安装默认安装的最新版本,如果django版本过低会自动升级到3.x版本 版本支持对应关系 示例...django.contrib.messages', 'django.contrib.staticfiles', 'app01.apps.App01Config', 'rest_framework...全部修改:修改id为1的数据,这里尽量在body体里写全参数 局部修改:修改id为1的数据,修改啥写啥 删除一条数据:删除id为2的数据 CBV源码流程分析 因为DRF框架里大部分都是基于...view加括号调用到此就是as_view加括号调用 4、调用执行了view()返回dispatch,但是这里的父类不是View,是APIview所以执行的dispatch是APIView中的dispatch...Request对象是rest_framework导入的,然后实例化后返回的,实例化就少不了__init__构造函数 from rest_framework.request import Request

1.3K10

Django+Vue开发生鲜电商平台之5.使用DRF实现商品列表页和过滤

2.serializer序列化model 使用Django自带的model_to_dict()方法可以实现直接将模型数据转化为字典形式,但是对于DateTimeField、ImageField等字段时还是无法序列化...REST框架是用于构建Web API的功能强大且灵活的工具包。...使用REST框架的一些原因: 该网站可浏览API是你的开发人员一个巨大的可用性胜利; 身份验证策略,包括OAuth1a和OAuth2的软件包; 支持ORM和非ORM数据源的序列化; 完全可自定义...方法的内容POST,这意味着您可以访问PUT和PATCH请求的内容; 它支持REST框架的灵活请求解析,不仅仅是支持表单数据。...request.user通常会返回的实例django.contrib.auth.models.User,尽管其行为取决于所使用的身份验证策略。

5.3K20

【愚公系列】2022年04月 Python教学课程 77-DRF框架之异常

文章目录 一、DRF框架自带异常 二、自定义异常 一、DRF框架自带异常 REST 框架的视图处理各种异常,并处理返回适当的错误响应。 处理的异常包括: 在 REST 框架中定义的异常。...PermissionDenied 在每种情况下,REST 框架都将返回具有适当状态代码和内容类型的响应。响应的正文将包含有关错误性质的任何其他详细信息。 大多数错误响应将在响应正文中包含一个键。...如果验证错误不是特定于特定字段的,则它将使用“non_field_errors”键,或者为该设置设置设置的任何字符串值。...该函数必须采用一对参数,第一个是要处理的异常,第二个是包含任何额外上下文(如当前正在处理的视图)的字典。异常处理程序函数应返回对象,如果无法处理异常,则应返回。...如果处理程序返回,则将重新引发异常,Django返回标准的HTTP 500“服务器错误”响应。

1K40

测试开发进阶(二十五)

痛点 代码冗余极其严重,不符合优秀测开风格 数据校验非常麻烦,且可复用性差 编码没有统一的规范,杂乱无章的感觉 写的代码非常多,不够简洁 仅支持json格式的传参,不支持form表单传参 仅能返回json...格式的数据,其他类型不支持 列表页视图没有分页,过滤,排序功能 Django REST framework 在Django框架基础上,进行二次开发 用于构建Restful API 简称为DRF框架REST...', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'rest_framework...反序列化部分优化 调用序列化器对象的is_valid方法,开始校验前端参数 校验成功返回True 校验失败返回False serializer.is_valid(raise_exception=True...) raise_exception=True校验失败会抛出异常 当调用 is_valid方法后,才可以调用 errors属性,获取校验的错误提示「字典格式」 class ProjectsList(View

79230

用 GraphQL 查询你的 Django 应用

同时,REST 通常都是由后端开发者主动封装, GraphQL 则是由前端主动拼装。 所以如果面对的场景是前端需求复杂多变,GraphQL 肯定比 REST 更适合快速迭代。...vs 扩展的 REST 协议 (此小节中图片拷贝自网络,懒得画) 和 REST 一样,GraphQL 并不是什么开发框架,它只是定义了一种通用型查询的 DSL。...而使用 REST 协议进行资源拉取,我们总是会面临一些实际的问题, GraphQL 可以在一定程度上解决。...在 REST 中,为了这个需求我们可能会额外为 /users 增加一个参数 with_comments # 查询 users,并限制结果返回字段 /api/users?...适合成熟的客户端开发团队,反之 REST 是更好的选择 Django 相关的生态建设并不完善,没有一个足够强大、开箱即用的整合方案 由于查询并不是基于 Uri 维度,会给周边配套的生态—— 监控、日志等

2K60

django写接口(实战篇)

1.设置全局分页参数 我们可以在 project 下的 settings.py 文件中加入 REST_FRAMEWORK 字典,设置全局的分页参数 REST_FRAMEWORK = { # 配置全局分页类型和每页数量...接口分页效果 我们可以看到接口返回的信息还包含了前一页和后一页的 url 是不是很人性化 接口数据多条件筛选 目前我们的接口要查找特定的信息只能通过 id 来查找,这肯定是不够完善的,这部分将设置接口的多条件查询...注册完以后,我们在 REST_FRAMEWORK 字典中将过滤器添加进去 REST_FRAMEWORK = { # 配置全局分页类型和每页数量 'DEFAULT_PAGINATION_CLASS...,rest_framework 的认证还包括许多,可以查看官网Authentication http://www.django-rest-framework.org/api-guide/authentication...'rest_framework', 'rest_framework.authtoken', ] # 然后在 REST_FRAMEWORK 字典中配置 DEFAULT_AUTHENTICATION_CLASSES

2K20

django-rest_framework api框架学习day1

今天开始了django-rest-framework的学习 *** 其实api写起来的话要比前后端一起写要简单很多,因为你不需要关心前端怎么写,主要心思放在后端上面即可,前端的话随便找个模板,然后用...’, ‘rest_framework’, ‘ajax’, ] *** 注册完成之后路由上的写法也有些不同, URL中 *** from django.urls import path...book_list},json_dumps_params={‘ensure_ascii’:False}) else: # 如果pk一个就查询一个, 这里有个查询技巧,就是values直接把查询的值转化成字典...对urlencoding会进行解析兼容较好,其余的都不会进行解析 *** ##下面是rest_framework框架 *** from rest_framework.serializers import...Serializer 序列化器 from rest_framework.views import APIView # 继承自View的api接口 from rest_framework.response

1.3K40

重点内容回顾-DRF

不是很方便呢? ForeignKey('self')代表的是自关联 3.一些常用的命令 a. 创建Django工程: django-admin startproject 工程名称 b....request.query_params保存解析之后的查询字符串的数据,并且已经解析成了字典或类字典,相当Django原始request对象中的request.GET 2.响应时可以统一返回Response...,DRF框架会自动对异常进行处理,并且会把处理之后的错误信息返回给客户端。...举个例子:True表示的是xxx/\/action方法名,False表示的是xxx/action方法名 6.高级功能 6.1分页 我们可以在配置文件中设置全局的分页方式 REST_FRAMEWORK...团队开发注意事项 浅谈密码加密 Django框架中的英文单词 Django中数据库的相关操作 DRF框架中的英文单词

2.4K20

django-rest-framewor

源码繁琐,多说无益,耐心细读官方文档: https://www.django-rest-framework.org/ 个人总结: REST是一种软件架构设计风格,不是标准,也不是具体的技术实现,只是提供了一组设计原则和约束条件...DRF(Django RestFramework)是一套基于Django开发的、帮助我们更好的设计符合REST规范的Web应用的一个Django App,所以,本质上,它是一个Django App。...model中的类型不一致,参数也可以调整),字段名称必须与model中的一致 在GET接口逻辑中,获取QuerySet 开始序列化:将QuerySet作业第一个参数传给序列化类,many默认为False,如果返回的数据是一个列表嵌套字典的多个对象集合...cls(**initkwargs), cls是视图类,执行视图函数时self就指向视图函数的实例对象 等待客户端请求 请求到来,开始执行视图函数,注意,调用视图函数时的方式是view(request),如果...token认证步骤:     用户登录,服务器端获取密码,查询用户表,如果存在该用户且第一次登录(或者token过期), 生成token,否则返回错误信息     如果用户不是第一次登录,且token未过期

1.5K10

Python Django 编程 | 连载 03 - Django 视图

一、初识 Django 中的视图函数 应用中的 views.py 是 Django MTV 架构中的 V,主要负责处理用户请求和生成相应的响应内容返回到前端,然后在 HTML 或者其他类型文档中渲染、显示...可以通过 dir 函数查看 request 对象的所有方法 用户的响应 response HttpResponse 可以直接返回字符串内容, render 函数则会将上下文中存放的数据在指定的模板中进行渲染...Django 中的视图类 Django 中支持视图类写法,视图类要继承 View 类,并通过定义 get 方法和 post 方法来处理前端发来的 GET 请求和 POST 请求,不用向视图函数那样要先通过...REST 指的是一组架构约束条件和原则。满足这些约束条件和原则的应用程序或设计就是 RESTful。...RESTful 风格使使请求路径变得更加简洁,传递、获取参数值更加方便,并且框架会自动进行类型转换。

63120
领券