浏览目录
渲染器
规定页面显示的效果(无用,了解即可)。
局部渲染
只返回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 获取版本