diff options
Diffstat (limited to 'docs/api-guide/content-negotiation.md')
| -rw-r--r-- | docs/api-guide/content-negotiation.md | 12 | 
1 files changed, 9 insertions, 3 deletions
| diff --git a/docs/api-guide/content-negotiation.md b/docs/api-guide/content-negotiation.md index 2a774278..bc3b09fb 100644 --- a/docs/api-guide/content-negotiation.md +++ b/docs/api-guide/content-negotiation.md @@ -1,4 +1,4 @@ -<a class="github" href="negotiation.py"></a> +source: negotiation.py  # Content negotiation @@ -29,7 +29,7 @@ The priorities for each of the given media types would be:  If the requested view was only configured with renderers for `YAML` and `HTML`, then REST framework would select whichever renderer was listed first in the `renderer_classes` list or `DEFAULT_RENDERER_CLASSES` setting. -For more information on the `HTTP Accept` header, see [RFC 2616][accept-header]  +For more information on the `HTTP Accept` header, see [RFC 2616][accept-header]  --- @@ -54,13 +54,15 @@ The `select_renderer()` method should return a two-tuple of (renderer instance,  The following is a custom content negotiation class which ignores the client  request when selecting the appropriate parser or renderer. +    from rest_framework.negotiation import BaseContentNegotiation +      class IgnoreClientContentNegotiation(BaseContentNegotiation):          def select_parser(self, request, parsers):              """              Select the first parser in the `.parser_classes` list.              """              return parsers[0] -         +          def select_renderer(self, request, renderers, format_suffix):              """              Select the first renderer in the `.renderer_classes` list. @@ -77,6 +79,10 @@ The default content negotiation class may be set globally, using the `DEFAULT_CO  You can also set the content negotiation used for an individual view, or viewset, using the `APIView` class based views. +	from myapp.negotiation import IgnoreClientContentNegotiation +    from rest_framework.response import Response +    from rest_framework.views import APIView +      class NoNegotiationView(APIView):          """          An example view that does not perform content negotiation. | 
