mirror of
https://github.com/encode/django-rest-framework.git
synced 2025-02-23 23:12:59 +03:00
Merge pull request #2580 from jpadilla/master
Fixes HiddenField being rendered in HTMLFormRenderer
This commit is contained in:
commit
dc8cc86077
|
@ -305,7 +305,7 @@ class HTMLFormRenderer(BaseRenderer):
|
||||||
})
|
})
|
||||||
|
|
||||||
def render_field(self, field, parent_style):
|
def render_field(self, field, parent_style):
|
||||||
if isinstance(field, serializers.HiddenField):
|
if isinstance(field._field, serializers.HiddenField):
|
||||||
return ''
|
return ''
|
||||||
|
|
||||||
style = dict(self.default_style[field])
|
style = dict(self.default_style[field])
|
||||||
|
|
|
@ -10,7 +10,10 @@ from rest_framework import status, permissions
|
||||||
from rest_framework.compat import OrderedDict
|
from rest_framework.compat import OrderedDict
|
||||||
from rest_framework.response import Response
|
from rest_framework.response import Response
|
||||||
from rest_framework.views import APIView
|
from rest_framework.views import APIView
|
||||||
from rest_framework.renderers import BaseRenderer, JSONRenderer, BrowsableAPIRenderer
|
from rest_framework import serializers
|
||||||
|
from rest_framework.renderers import (
|
||||||
|
BaseRenderer, JSONRenderer, BrowsableAPIRenderer, HTMLFormRenderer
|
||||||
|
)
|
||||||
from rest_framework.settings import api_settings
|
from rest_framework.settings import api_settings
|
||||||
from rest_framework.test import APIRequestFactory
|
from rest_framework.test import APIRequestFactory
|
||||||
from collections import MutableMapping
|
from collections import MutableMapping
|
||||||
|
@ -455,3 +458,16 @@ class TestJSONIndentationStyles:
|
||||||
renderer.compact = False
|
renderer.compact = False
|
||||||
data = OrderedDict([('a', 1), ('b', 2)])
|
data = OrderedDict([('a', 1), ('b', 2)])
|
||||||
assert renderer.render(data) == b'{"a": 1, "b": 2}'
|
assert renderer.render(data) == b'{"a": 1, "b": 2}'
|
||||||
|
|
||||||
|
|
||||||
|
class TestHiddenFieldHTMLFormRenderer(TestCase):
|
||||||
|
def test_hidden_field_rendering(self):
|
||||||
|
class TestSerializer(serializers.Serializer):
|
||||||
|
published = serializers.HiddenField(default=True)
|
||||||
|
|
||||||
|
serializer = TestSerializer(data={})
|
||||||
|
serializer.is_valid()
|
||||||
|
renderer = HTMLFormRenderer()
|
||||||
|
field = serializer['published']
|
||||||
|
rendered = renderer.render_field(field, {})
|
||||||
|
assert rendered == ''
|
||||||
|
|
Loading…
Reference in New Issue
Block a user