diff --git a/rest_framework_json_api/utils.py b/rest_framework_json_api/utils.py index e37f4110..24adda77 100644 --- a/rest_framework_json_api/utils.py +++ b/rest_framework_json_api/utils.py @@ -228,8 +228,12 @@ def extract_relationships(fields, resource, resource_instance): if not isinstance(field, (RelatedField, ManyRelatedField, BaseSerializer)): continue + try: + relation_instance_or_manager = getattr(resource_instance, field_name) + except AttributeError: # Skip fields defined on the serializer that don't correspond to a field on the model + continue + relation_type = get_related_resource_type(field) - relation_instance_or_manager = getattr(resource_instance, field_name) if isinstance(field, HyperlinkedIdentityField): # special case for HyperlinkedIdentityField