aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTom Christie2014-11-07 12:16:25 +0000
committerTom Christie2014-11-07 12:16:25 +0000
commitbb21216a7c7f3435ece44462beb24275bb44551a (patch)
tree3cefb11ac99d977afc19462c8a9f17d8ffcc42c9
parenteafb7e1e24c31f0a6795ef5b8ac52940569d5854 (diff)
downloaddjango-rest-framework-bb21216a7c7f3435ece44462beb24275bb44551a.tar.bz2
Metadata API should examine child serializer if passed parent ListSerializer. Closes #2035.
-rw-r--r--rest_framework/metadata.py4
1 files changed, 4 insertions, 0 deletions
diff --git a/rest_framework/metadata.py b/rest_framework/metadata.py
index b08d3ab6..90d3f2e0 100644
--- a/rest_framework/metadata.py
+++ b/rest_framework/metadata.py
@@ -96,6 +96,10 @@ class SimpleMetadata(BaseMetadata):
Given an instance of a serializer, return a dictionary of metadata
about its fields.
"""
+ if hasattr(serializer, 'child'):
+ # If this is a `ListSerializer` then we want to examine the
+ # underlying child serializer instance instead.
+ serializer = serializer.child
return OrderedDict([
(field_name, self.get_field_info(field))
for field_name, field in serializer.fields.items()