@@ -76,15 +76,16 @@ def get_serializer_info(self, serializer):
7676 serializer .fields .pop (api_settings .URL_FIELD_NAME , None )
7777
7878 return OrderedDict (
79- [(field_name , self .get_field_info (field , serializer )) for field_name , field in serializer .fields .items ()]
79+ [(field_name , self .get_field_info (field )) for field_name , field in serializer .fields .items ()]
8080 )
8181
82- def get_field_info (self , field , serializer ):
82+ def get_field_info (self , field ):
8383 """
8484 Given an instance of a serializer field, return a dictionary
8585 of metadata about it.
8686 """
8787 field_info = OrderedDict ()
88+ serializer = field .parent
8889
8990 if isinstance (field , serializers .ManyRelatedField ):
9091 field_info ['type' ] = self .type_lookup [field .child_relation ]
@@ -115,7 +116,7 @@ def get_field_info(self, field, serializer):
115116 field_info [attr ] = force_text (value , strings_only = True )
116117
117118 if getattr (field , 'child' , None ):
118- field_info ['child' ] = self .get_field_info (field .child , field . child . serializer )
119+ field_info ['child' ] = self .get_field_info (field .child )
119120 elif getattr (field , 'fields' , None ):
120121 field_info ['children' ] = self .get_serializer_info (field )
121122
0 commit comments