diff --git a/rest_framework/serializers.py b/rest_framework/serializers.py index c2b414d7a..3fdd55c32 100644 --- a/rest_framework/serializers.py +++ b/rest_framework/serializers.py @@ -1132,3 +1132,16 @@ class HyperlinkedModelSerializer(ModelSerializer): 'model_name': model_meta.object_name.lower() } return self._default_view_name % format_kwargs + + def get_nested_field(self, model_field, related_model, to_many): + """ + Creates a default instance of a hyperlinked nested relational field. + + Note that model_field will be `None` for reverse relationships. + """ + class NestedHyperlinkedModelSerializer(HyperlinkedModelSerializer): + class Meta: + model = related_model + depth = self.opts.depth - 1 + + return NestedHyperlinkedModelSerializer(many=to_many)