Динамический выбор DRF зависит от текущего пользователя

можно ли сделать так, чтобы выбор динамически зависел от текущего пользователя? что-то вроде этого:

class RideSerializer(serializers.ModelSerializer):
    provider_username = serializers.ChoiceField(choices=request.user.providers)

Вы можете задать варианты выбора в конструкторе. Следующий код показывает идею. Вы можете передать запрос через контекст https://www.django-rest-framework.org/api-guide/serializers/#including-extra-context

class RideSerializer(serializers.ModelSerializer):
    provider_username = serializers.ChoiceField()

    def __init__(self, *args, **kwargs):
       super().__init__(*args, **kwargs)
       self.fields["provider_username"].choices = request.user.providers
Вернуться на верх