We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent d9b5f08 commit 9decc1fCopy full SHA for 9decc1f
rest_framework_json_api/views.py
@@ -156,10 +156,18 @@ def get_related_field_name(self):
156
return field_name
157
158
def get_related_instance(self):
159
- try:
160
- return getattr(self.get_object(), self.get_related_field_name())
161
- except AttributeError:
162
- raise NotFound
+ parent_obj = self.get_object()
+ parent_serializer = self.serializer_class(parent_obj)
+ field_name = self.get_related_field_name()
+ field = parent_serializer.fields.get(field_name, None)
163
+
164
+ if field is not None:
165
+ return field.get_attribute(parent_obj)
166
+ else:
167
+ try:
168
+ return getattr(parent_obj, field_name)
169
+ except AttributeError:
170
+ raise NotFound
171
172
173
class ModelViewSet(AutoPrefetchMixin,
0 commit comments