rest-framework组件 之 渲染器与版本

浏览目录

渲染器

版本

渲染器

规定页面显示的效果(无用,了解即可)。

局部渲染

只返回json数据。

效果:

看另一种情况:

既返回json数据,又嵌套在html中。注意:容易出bug.

效果如下:

看一下源码:

默认全局。

全局渲染

REST_FRAMEWORK = {
    'DEFAULT_RENDERER_CLASSES':['rest_framework.renderers.JSONRenderer',
                                'rest_framework.renderers.BrowsableAPIRenderer',],

} 

版本

先看一下源码:

APIview--despatch--initial

圈出来指的就是版本。

rest-framework源码中用到了面向对象的封装。

版本使用:

添加配置

REST_FRAMEWORK = {

					....

					'DEFAULT_VERSIONING_CLASS':'rest_framework.versioning.URLPathVersioning',
					'ALLOWED_VERSIONS':['v1','v2'], # 允许的版本
					'VERSION_PARAM':'version', # 参数
					'DEFAULT_VERSION':'v1', # 默认版本
					....
				}

设置路由

s9luffycity/urls.py
					urlpatterns = [
						#url(r'^admin/', admin.site.urls),
						url(r'^api/(?P<version>\w+)/', include('api.urls')),
					]

				api/urls.py
					urlpatterns = [
						url(r'^course/$', course.CourseView.as_view()),
					]

获取版本

request.version 获取版本

  

猜你喜欢

转载自www.cnblogs.com/gaoya666/p/9101133.html