From a14602b01f7412c76368e977f164d2038d55ea20 Mon Sep 17 00:00:00 2001 From: Egyed Zoltan Date: Mon, 26 Jan 2015 15:28:59 +0100 Subject: [PATCH] In the BrowsableAPIRenderer the form now can be disabled --- docs/api-guide/settings.md | 6 ++++++ rest_framework/renderers.py | 5 ++++- rest_framework/settings.py | 1 + 3 files changed, 11 insertions(+), 1 deletion(-) diff --git a/docs/api-guide/settings.md b/docs/api-guide/settings.md index 9005511b7..7945ee5e3 100644 --- a/docs/api-guide/settings.md +++ b/docs/api-guide/settings.md @@ -253,6 +253,12 @@ The name of a URL parameter that may be used to override the default `Accept` he Default: `'format'` +#### SHOW_FORM + +Show the form in the BrowsableAPIRenderer. + +Default: `True` + --- ## Date and time formatting diff --git a/rest_framework/renderers.py b/rest_framework/renderers.py index 584332e66..fb46fc16b 100644 --- a/rest_framework/renderers.py +++ b/rest_framework/renderers.py @@ -510,8 +510,11 @@ class BrowsableAPIRenderer(BaseRenderer): def show_form_for_method(self, view, method, request, obj): """ - Returns True if a form should be shown for this method. + Returns True if a form should be shown for this method, or can be show at all. """ + if not api_settings.SHOW_FORM: + return False + if method not in view.allowed_methods: return # Not a valid method diff --git a/rest_framework/settings.py b/rest_framework/settings.py index fc6dfecda..d145142cb 100644 --- a/rest_framework/settings.py +++ b/rest_framework/settings.py @@ -92,6 +92,7 @@ DEFAULTS = { 'FORM_CONTENTTYPE_OVERRIDE': '_content_type', 'URL_ACCEPT_OVERRIDE': 'accept', 'URL_FORMAT_OVERRIDE': 'format', + 'SHOW_FORM': True, 'FORMAT_SUFFIX_KWARG': 'format', 'URL_FIELD_NAME': 'url',