django rest framework renderer

渲染器

REST framework 包含许多内置的渲染器类,容许您使用各类 media type 返回响应。同时也支持自定义渲染器。python

视图的渲染器集合始终被定义为类列表。当调用视图时,REST framework 将对请求内容进行分析,并肯定最合适的渲染器以知足请求。内容分析的基本过程包括检查请求的 Accept header,以肯定它在响应中指望的 media type。或者,用 URL 上的格式后缀明确表示。例如,URL http://example.com/api/users_count.json 可能始终返回 JSON 数据。json

设置渲染器

DEFAULT_RENDERER_CLASSES 设置全局的默认渲染器集。api

REST_FRAMEWORK = {
    'DEFAULT_RENDERER_CLASSES': (
        'rest_framework.renderers.JSONRenderer',
        'rest_framework.renderers.BrowsableAPIRenderer',
    )
}

基于 API​​View 的视图类来设置单个视图或视图集的渲染器编码

renderer_classes = (JSONRenderer, )

API参考

JSONRenderer
使用 utf-8 编码将请求数据呈现为 JSON。rest

 

TemplateHTMLRenderer
使用 Django 的标准模板将数据呈现为 HTML。与其余渲染器不一样,传递给 Response 的数据不须要序列化。另外,建立 Response 时可能须要包含 template_name 参数。对象

等同于render(request,template_name,{})blog

 

StaticHTMLRenderer
一个简单的渲染器,它只是返回预渲染的 HTML。与其余渲染器不一样,传递给响应对象的数据应该是表示要返回的内容的字符串。utf-8

等同于HttpResponse字符串

 

BrowsableAPIRenderer
将数据呈现为可浏览的 HTML API模板

 

AdminRenderer将数据呈现为 HTML,以显示相似管理员的内容

相关文章
相关标签/搜索