Commit e03854ba by Tom Christie

Tweaks to display nested data in empty serializers

parent 315435d0
......@@ -134,9 +134,9 @@ class RelatedField(WritableField):
value = obj
for component in source.split('.'):
value = get_component(value, component)
if value is None:
break
value = get_component(value, component)
except ObjectDoesNotExist:
return None
......@@ -567,8 +567,13 @@ class HyperlinkedIdentityField(Field):
May raise a `NoReverseMatch` if the `view_name` and `lookup_field`
attributes are not configured to correctly match the URL conf.
"""
lookup_field = getattr(obj, self.lookup_field)
lookup_field = getattr(obj, self.lookup_field, None)
kwargs = {self.lookup_field: lookup_field}
# Handle unsaved object case
if lookup_field is None:
return None
try:
return reverse(view_name, kwargs=kwargs, request=request, format=format)
except NoReverseMatch:
......
......@@ -338,9 +338,9 @@ class BaseSerializer(WritableField):
value = obj
for component in source.split('.'):
value = get_component(value, component)
if value is None:
break
return self.to_native(None)
value = get_component(value, component)
except ObjectDoesNotExist:
return None
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment