diff options
| author | Tom Christie | 2013-12-09 07:34:08 +0000 | 
|---|---|---|
| committer | Tom Christie | 2013-12-09 07:34:08 +0000 | 
| commit | 06d8a31e132c99a9645e26b5def3a1d9b9585c24 (patch) | |
| tree | 5836843af1e169a00a703a2b2dc271bcf990e6e8 /rest_framework/renderers.py | |
| parent | 774298f145d18292b76f2bd90469e25c1950b1af (diff) | |
| download | django-rest-framework-06d8a31e132c99a9645e26b5def3a1d9b9585c24.tar.bz2 | |
Catch and mask ParseErrors that occur during rendering of the BrowsableAPI.
Diffstat (limited to 'rest_framework/renderers.py')
| -rw-r--r-- | rest_framework/renderers.py | 9 | 
1 files changed, 7 insertions, 2 deletions
| diff --git a/rest_framework/renderers.py b/rest_framework/renderers.py index fe4f43d4..2fdd3337 100644 --- a/rest_framework/renderers.py +++ b/rest_framework/renderers.py @@ -20,6 +20,7 @@ from rest_framework.compat import StringIO  from rest_framework.compat import six  from rest_framework.compat import smart_text  from rest_framework.compat import yaml +from rest_framework.exceptions import ParseError  from rest_framework.settings import api_settings  from rest_framework.request import is_form_media_type, override_method  from rest_framework.utils import encoders @@ -420,8 +421,12 @@ class BrowsableAPIRenderer(BaseRenderer):          In the absence of the View having an associated form then return None.          """          if request.method == method: -            data = request.DATA -            files = request.FILES +            try: +                data = request.DATA +                files = request.FILES +            except ParseError: +                data = None +                files = None                  else:              data = None              files = None | 
