@@ -198,10 +198,11 @@ def extract_relationships(fields, resource, resource_instance):
198
198
if not isinstance (field , (RelatedField , ManyRelatedField , BaseSerializer )):
199
199
continue
200
200
201
+ relation_type = get_related_resource_type (field )
202
+
201
203
if isinstance (field , HyperlinkedIdentityField ):
202
204
# special case for HyperlinkedIdentityField
203
205
relation_data = list ()
204
- relation_type = get_related_resource_type (field )
205
206
relation_manager = getattr (resource_instance , field_name )
206
207
# Don't try to query an empty relation
207
208
related = relation_manager .all () if relation_manager is not None else list ()
@@ -219,7 +220,6 @@ def extract_relationships(fields, resource, resource_instance):
219
220
continue
220
221
221
222
if isinstance (field , (PrimaryKeyRelatedField , HyperlinkedRelatedField )):
222
- relation_type = get_related_resource_type (field )
223
223
relation_id = getattr (resource_instance , field_name ).pk if resource .get (field_name ) else None
224
224
225
225
relation_data = {
@@ -256,7 +256,6 @@ def extract_relationships(fields, resource, resource_instance):
256
256
257
257
if isinstance (field , ListSerializer ):
258
258
relation_data = list ()
259
-
260
259
serializer = field .child
261
260
relation_model = serializer .Meta .model
262
261
relation_type = inflection .pluralize (relation_model .__name__ ).lower ()
0 commit comments