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

Django进阶:DRF(Django REST framework)

DRF即Django REST framework缩写,官网上说:Django REST framework是一个强大而灵活工具包,用于构建Web API。...在Django中,我们通过model-view-template实现了后端和前端通信。但前端未必是用Djangotemplate实现,也可以用单独前端框架(如vue)实现。...这个时候就需要一种统一方法在前后端通信。目前一种成熟方法就是API。 那么什么是REST? 如果你对DRF是用于构建Web API说法已经满意了,就可以跳过这段了。 那么什么是REST?...关于如何设计出符合REST风格API,可以参考阮一峰《RESTful API 设计指南》 那么用DRF实现就是RESTful API?其实DRF没有强制实现。...“Django REST 框架”这个名字是在 2011 年初决定,选择它只是为了确保开发人员很容易找到这个项目。在整个文档中,我们尝试使用更简单、技术上正确术语“Web API”。

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

django-drf框架中排序和查询组件

0910自我总结 django-drf框架中排序和查询组件 一查询相关 1.模糊查询 1.导入模块组件 from rest_framework.filters import SearchFilter 2....自定义视图类中相关设置参数 from rest_framework.viewsets import ModelViewSet from rest_framework.filters import SearchFilter...前面添加各种字符来限制搜索行为 ^以指定内容开头 =完全匹配 @全文搜索(目前只支持django数据存放在mysql) $正则匹配 2.自定义查询 1.自定义条件导入模块及设置 from django_filters.rest_framework...'] #上面的min_price以及max_price为我们提交数据key 2.在视图层中导入 from rest_framework.viewsets import ModelViewSet...from django_filters.rest_framework import DjangoFilterBackend class CarModelViewSet(ModelViewSet):

92400

教你 10 分钟构建一套 RESTful API 服务( 下 )

和 Restless 依赖插件增强使用场景 但是,有些小伙伴希望能写一下 Django 实现 RESTful API 实现过程 因此本篇将介绍 Django 搭建 RESTful API 流程...安装依赖 使用 Django 编写 RESTful API 之前,我们需要先在虚拟环境内安装对应依赖 具体包含: Django:基础 Web 框架 djangorestframework:Django...扩展,增加了对快速构建 REST API 支持 django-rest-swagger:Django 支持Swagger UI,可以生成 API 接口文档 django-filter:配合 djangorestframework...ModelViewSet 定义了 CRUD 全部功能 所以只需要编写一个 ModelViewSet 子类,重写 create()、list()、retrieve()、update()、destory...() 方法即可 当然,这里也可以使用 django_filters 来过滤数据,来完成一些复杂查询场景 # api/restfulapi/views.py from rest_framework import

1.5K40

DRF系列总结二:脚手架搭建

一、安装DRF   首先,我们创建一个Django基础工程demo,并创建一个测试app,得到了Django框架初始化代码,代码目录结构如下: # django-admin startproject...可以根据环境拆分配置文件,比如dev.py/stag.py/prod.py(本文就当做重点来展开了),urls.py用于配置路由,app则是一个普通Django应用,方便快速开发。   ...'rest_framework', ... ) 配置DRF框架,修改文件settings.py,增加如下配置: # BEP-DRF # =============...,我们可以通过配置方式对外快速提供Django模型查询接口,且接口参数格式类似DjangoORM语法,比如: class RemoteSystem(Model): """...,通过阅读代码和文档,我们发现ModelViewSet父类APIView中finalize_response函数恰好是DRF定义response统一处理接口,于是我们可以重写ModelViewSet

3.6K60

【愚公系列】2022年04月 Python教学课程 70-DRF框架之视图集

,所以我们可以通过继承Mixin扩展类来复用这些方法而无需自己编写。...,还提供了GenericAPIView提供基础方法可以直接搭配Mixin扩展类使用。..."""经过上面的处理,我们就已经把所有视图方法写在一个类中了,但是继承父类有点多 所以,drf里面提供了模型视图集[ModelViewSet],可以一次性提供5个api接口方法 最后,def还提供了只读模型视图集...[ReadOnlyModelViewSet],可以提供获取多条数据和一条数据视图方法 """ from rest_framework.viewsets import ModelViewSet,ReadOnlyModelViewSet...此扩展方法包括:get_serializer_class(获取序列化器返回)、action属性、自定义方法使用 from django.db import DatabaseError from rest_framework.authentication

1.6K30

教你 10 分钟构建一套 RESTful API 服务( Django篇 )

和 Restless 依赖插件增强使用场景 但是,有些小伙伴希望能写一下 Django 实现 RESTful API 实现过程 因此本篇将介绍 Django 搭建 RESTful API 流程...安装依赖 使用 Django 编写 RESTful API 之前,我们需要先在虚拟环境内安装对应依赖 ​ 具体包含: Django:基础 Web 框架 djangorestframework:Django...扩展,增加了对快速构建 REST API 支持 django-rest-swagger:Django 支持Swagger UI,可以生成 API 接口文档 django-filter:配合 djangorestframework...() 方法即可 当然,这里也可以使用 django_filters 来过滤数据,来完成一些复杂查询场景 # api/restfulapi/views.py from rest_framework import...你肯定是最大鼓励和支持。

5K10

3. DRF进阶之DRF视图和常用功能

DRF视图和常用功能 DRF视图 DRF视图类介绍 在DRF框架中提供了众多通用视图基类与扩展类,以简化视图编写。...View:Django默认视图基类,负责将视图连接到URL,HTTP请求方法基本调度,之前写类视图一般都用这个。...示例:重写create()方法,修改数据和响应内容格式 新增app视图: myapp/views.py from rest_framework.viewsets import ModelViewSet...IsAdminUser:仅管理员用户 IsAuthenticatedOrReadOnly:登录用户可以读写API,未登录用户只读 DRF Session 认证 参考文档: https://www.django-rest-framework.org...search=%E5%BC%A0%E4%B8%89 分页 分页是数据表格必备功能,可以在前端实现,也可以在后端实现,为了避免响应数据过大,造成前端压力,一般在后端实现。

4.3K10

django rest framework 过滤时间操作

通常我们会用到过滤两个时间段内一些数据, 当我们用django rest framework时候, 他可以根据字段filter_fields进行过滤, 但是对于日期来说并不起作用, 这个时候就需要我们设置重写...from django_filters.rest_framework import DjangoFilterBackend from rest_framework.viewsets import ModelViewSet...class DoctorsViewSet(ModelViewSet): filter_backends = [DjangoFilterBackend] #过滤其他字段 filter_fields...from rest_framework.filters import OrderingFilter #2.在类中使用 class CarsModelViewSet(ModelViewSet):...ordering=id 正序 ordering_fields = ('id', ) 以上这篇django rest framework 过滤时间操作就是小编分享给大家全部内容了,希望能给大家一个参考

2.2K30

Restful接口开发与测试—集成Swagger

Swagger简介 Swagger是一个规范和完整框架,用于生成、描述、调用和可视化 RESTful 风格 Web 服务。总体目标是使客户端和文件系统(源代码)作为服务器以同样速度来更新。...Swagger能成为最受欢迎REST APIs文档生成工具之一,有以下几个原因: Swagger 可以生成一个具有互动性API控制台,开发者可以用来快速学习和尝试API。...Swagger 可以生成客户端SDK代码用于各种不同平台上实现。 Swagger 文件可以在许多不同平台上从代码注释中自动生成。 Swagger 有一个强大社区,里面有许多强悍贡献者。...Django 接入Swagger 首先安装 django-rest-swagger pip install django-rest-swagger 进入到setting.py文件,添加django-rest-swagger...将之前定义UserViewSet和GroupViewSet补充注释: from django.contrib.auth.models import User,Group from rest_framework

65220

5 分钟,带你快速入门 Django DRF

前言 大家好,是安果!...DRF 框架,全称为 Django Rest Framework,是 Django 内置模块扩展,用于创建标准化 RESTful API;它利用 ORM 映射数据库,并自定义序列化数据进行返回,多用于前后端分离项目...'django.contrib.staticfiles', 'rest_framework', ] 然后配置 REST_FRAMEWORK 权限 # 配置DRF权限 REST_FRAMEWORK...2-7 定义视图 ViewSets 在 urls.py 文件中,定义一个视图表现类,让他继承于「 viewsets.ModelViewSet 」类 # urls.py from django.contrib.auth.models...最后 文中介绍了快速入门 DRF 基本流程,实际项目中,一般将序列化、视图类单独分离出来 另外,序列化、视图函数、API 可以根据父类去自由定制,这部分内容下篇文章再进行说明

1.7K20

Django REST Framework-什么是路由

Django REST Framework(以下简称DRF)是一个强大框架,用于在Django中构建Web API。路由(Routing)是DRF中一个关键概念,用于确定请求处理方式。...接下来,我们使用register()方法向路由器中注册视图类,这将为每个视图类生成URL模式。最后,我们将路由器URL模式包括在Djangourlpatterns中。...下面是一个使用DefaultRouter示例:from django.urls import path, includefrom rest_framework import routersfrom ....接下来,我们使用register()方法向路由器中注册视图类,这将为每个视图类生成URL模式。最后,我们将路由器URL模式包括在Djangourlpatterns中。...这可以通过在视图类中定义一个名为“basename”属性来实现,如下所示:from rest_framework import viewsetsclass ArticleViewSet(viewsets.ModelViewSet

43711

体验Django REST framework,解读REST架构风格

因为项目中使用了REST API,所以对REST架构风格做了一些研究。如果有对REST架构风格还不了解,或者一知半解朋友,可以读读另一篇文章《那些年,我们一起误解过REST》。...一开始在项目中使用是OpenResty来实现REST API,但使用起来一直觉得不方便。主要是因为Lua没有ORM,也没有REST架构风格框架。...,实现了get、post、put、delete等请求方法对应通用处理方法,直接继承可以极大地简化代码。...2.3 统一请求方法 REST通过统一请求方法,只知道资源URI就可以进行一系列增删查改操作。...[image.png] 2.4 资源表述 在《那些年,我们一起误解过REST》文中提到过,同一个资源可以有多个不同表述,每个表述需要是自描述

4.1K582
领券