Заполнение связанного поля на основе параметра запроса

Я пытаюсь реализовать способ отображения полной информации о связанном поле, а не только ID или конкретного поля, когда оно указано в параметре запроса, например, http://api_url/courses?populate="author"

В настоящее время ID поля автора отображается так, с этим URL - http://api_url/courses

"data": [
    {
   
        "author": "e1d5b311-f6b5-4909-8caf-da6ff025a4fc",
        .... 
    }
]

Мне нужно, чтобы он мог отображаться полностью, когда параметр ?populate="author" добавляется к URL - http://api_url/courses?populate="author" должен показывать следующее:

 "data": [
    {
   
        "author": {
             "id" : "e1d5b311-f6b5-4909-8caf-da6ff025a4fc",
             "first_name" : "string",
             "last_name" : "string",
         },
        .... 
    }
]

В настоящее время я могу показать полную информацию о поле с помощью вложенного сериализатора, например, так, или показать только UUID (или любое другое поле) с помощью SlugRelatedField.

class CourseSerializer(serializers.ModelSerializer):
    author = UserSerializer()

    class Meta:
        model = Course
        fields = "__all__"

Любая помощь будет высоко оценена.

Вернуться на верх