首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

django-rest-framewor

源码繁琐,多说无益,耐心细读官方文档: https://www.django-rest-framework.org/ 个人总结: REST是一种软件架构设计风格,不是标准,也不是具体的技术实现,只是提供了一组设计原则和约束条件...DRF(Django RestFramework)是一套基于Django开发的、帮助我们更好的设计符合REST规范的Web应用的一个Django App,所以,本质上,它是一个Django App。...,需要改为many=True 返回:将序列化对象的data属性返回即可  {{ 实践代码 }} --post接口设计 url定义:需要为post新增url,因为根据规范,url定位资源,http请求方式定义用户行为...cookie、session和token都有其应用场景,没有谁好谁坏,不过开发数据接口类的Web应用,目前用token还是比较多的。   ...def generater_token(): random_str = ''.join(str(uuid.uuid4()).split('-')) return random_str

1.5K10

#小手一抬学Python# Python Web 之 Django 的世界

Django 是什么 -------------- Django 是一个框架,用于开发网站,使用的编程语言的是 Python,在 Django 中提供了开发常用的模板,让程序员主要精力放在业务部分。...,包括占位符,分支,循环等常见操作),Django没有失去的 Controller,只是它自己实现了,不需要开发者过多的参与。...滚雪球第三轮主要学习的是 Djando,框架是提高代码编写效率的利器,从任意一个学习开始都可以,选择 Django 只因为改框架在国内热度比较高一些,一定留意,从框架上并无任何优劣之分。 2....运算符; 数据类型,整数,字符串,列表,元组,字典,集合; 重点类型,字符串,列表以及其对象方法; 元组与字典相关方法; 分支与循环语句; 模块与函数; 类,属性,方法; 正则表达式; 4....字典是有顺序的吗,collections.OrderedDict 是做什么的? 字典的默认值如何设置? 双端队列 collections.deque 学习过吗? 使用 os 模块可以导入模块吗?

53060

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

开发的异同时说过,django-rest-framework 开发和传统的开发方式没有什么不同,区别仅在于返回的数据格式不同而已。...401:没有提供身份认证信息 403:没有操作权限 404 :访问的资源不存在 405:不支持的 HTTP 请求方法 500:服务器内部错误 HTTP 请求和响应过程,django-rest-framework...根据被序列化对象属性的数据类型,需要指定相应的序列化字段(Serializer Field)。...和表单类似,django-rest-framework 的序列化器也可以根据关联的模型,自动检测被序列化模型各个属性的数据类型,推测需要使用的序列化字段,无需我们显示定义。...,django-rest-framework 就会根据各个属性的数据类型,自动推测需要使用的系列化字段,从而生成标准的序列化器。

98620

DjangoRestFramework,认证组件、权限组件、频率组件、url注册器、响应器、分页组件

的session存到了django_session表中,不是很好操作,但是一般的场景都是没有啥问题的,现在生产中使用的一个叫做token机制的方式比较多,现在我们是不是就知道个csrf_token啊,其实...user,token='123456') # 创建token随机字符串,我写了两个方式,简写的昂,最好再加密一下 random_str = uuid.uuid4...import render,HttpResponse,redirect from django.views import View from rest_framework import serializers..._request,所以上面的取值方式是没有问题的,不过人家APIView不仅封装了老的request对象,并且还给你加了query_params属性,和老的request.GET得到的内容是一样的,所以可以直接按照下面的方式来写...,PageNumberPagination类中除了PAGE_SIZE属性之外,还有个page属性,这个page属性是第几页,用法是http://127.0.0.1:8000/books/?

57220

DRF框架学习(四)

DRF框架学习(四) 1.视图集对象的action属性 作用: 获取现在要执行的是哪一种操作。 self.action:是字符串类型,目的是获取所有执行的操作。...在执行视图的dispatch()方法前,会先进行视图访问权限的判断 在通过get_object()获取具体对象时,会进行对象访问权限的判断 DRF框架提供了四个权限控制类: AllowAny允许所有用户...""" # 需求: 对id为1,3的数据对象有访问权限,其他的对象没有访问权限 if obj.id in (1, 3): return True...6.1 使用 DRF框架默认没有进行全局限流设置,但是提供了配置项,我们可以在配置文件中,使用 DEFAULT_THROTTLE_CLASSES 和 DEFAULT_THROTTLE_RATES进行全局配置...'django_filters', # 需要注册应用, ] # 过滤 REST_FRAMEWORK = { 'DEFAULT_FILTER_BACKENDS': ('django_filters.rest_framework.DjangoFilterBackend

2.7K40

DRF框架(一)——drf请求生命周期是什么?请求模块request咋用?渲染模块render咋用?

目录 安装DRF框架 drf请求生命周期流程 请求模块:request对象 渲染模块: 安装DRF框架 pip install djangorestframework drf请求生命周期流程 根据应用中...urls.py,走as_view方法,但是视图类没有该方法,所以请求走的是APIView的as_view方法 在APIView的as_view调用父类(django原生View)的as_view,同时还禁用了...对象 1) drf 对原生request做了二次封装,设置request...._request等于原生request 2) 原生request对象属性和方法都可以被drf的request对象直接访问(兼容) 3) drf请求的所有url拼接参数均被解析到query_params...], } 自定义局部配置:某一个或一些实体类单独处理,在views.py视图类中提供对应的类属性 # 在setting.py中配置REST_FRAMEWORK,完成的是全局配置,所有接口统一处理

89410

DRF学习笔记(一)

# 一、Django REST FrameWork 简介 使用 Django REST FramWork 能够让我们使用 Django 编写的后端 API 接口时,更优雅的处理数据的 json 序列化和...随后打开 Django 项目的 setttings.py 文件,将我们下载的 DRF 框架注册到 Django 的 APP 当中,如下: INSTALL_APPS = { ......对象解析 当我们的视图层继承了 DRF 给我们提供的的 View 时,DRF会给我们编写的视图函数传递一个 request对象,该对象是对 Django 原生 request对象的封装,同时对获取 request...这类似于标准的 request.POST 和 request.FILES 属性,但是该对象包含有独有的特性: 它包含了所有解析后的内容,包括文件类型和非文件类型的输入 它支持除了POST类型以外的其他HTTP...# 四、Respone 对象解析 DRF 中对 Django 原生的 Response 对象进行了封装

61910

drf序列化器之反序列化的数据验证

验证失败,可以通过序列化器对象的errors属性获取错误信息,返回字典,包含了字段和字段的错误提示。...如果是非字段错误,可以通过修改REST framework配置中的NON_FIELD_ERRORS_KEY来控制错误字典中的键名。...验证成功,可以通过序列化器对象的validated_data属性获取数据。 在定义序列化器时,指明每个字段的序列化类型和选项参数,本身就是一种验证行为。...django.contrib.messages', 'django.contrib.staticfiles', 'rest_framework', # 把drf框架注册到django项目中...pub_date = models.DateField(verbose_name='发布日期') # 设置存储文件的子目录为avatar,总目录不写的话是在settings中配置,不填则没有

2.1K30

Django进阶篇 Rest framework (八)

Django进阶篇 Rest framework (七) ? 理解 django rest framework,需要先理解面向对象。...子类继承父类属性和方法,而在基类中往往以定义抽象接口的形式,强制使子类重写抽象接口。不过抽象接口往往是框架的开发者做,而不是自己需要做。...实例化的对象可以调用类的属性和方法,其实方法也可以看作是一种属性。子类定义或者重写父类的属性,实例化的对象可以调用父类中的方法查询到子类的属性,就是说实例化的对象集所有父类子类于一身。...子类中的方法或者属性会覆盖掉父类中的方法和属性,实例化对象调用的时候不会管父类中怎么样,所以在变量和方法命名的时候应该注意,或者也可以使用 super 等操作。...而在 django rest framework 中,对原生 request 做了封装。

41440

python教程

用我们的序列化来写常规的Django视图 让我们看看,使用我们新的序列化类,我们怎么写一些API视图。此刻,我们不会使用REST框架的其他特性,仅仅像写常规Django视图一样。...请求对象 REST框架介绍了一个请求(Request)对象,它扩展了常规的HttpResquest,并且,提供更灵活的请求解析。...响应对象 REST 框架也介绍了Response对象,它是一类用未渲染内容和内容协商来决定正确的内容类型并把它返回给客户端的模板响应(TemplateResponse)。...相似地,虽然我们可以在响应对象中带数据,但允许REST框架渲染响应成正确的内容类型。...我们不会返回一个对象实例,而是对象实例的一个属性。 我们会是使用基类代表实例,并创建我们自己的.get()方法,而不是用普通的视图。

5K10
领券