Использую во вьюхе APIView. При использовании generics насколько я знаю есть возможность передавать контекст с помощью метода
get_serializer_context
urls.py
path('upload_excel_rfi/<str:rfiid>/<int:vendor>/<int:analyst>/', UploadElementFromExcelFile.as_view()
views.py
class BlaBlaClass(generics.ListCreateView):
....
def get_serializer_context(self):
return {"rfiid": self.kwargs['rfiid']}
И в сериализаторе принять
serializers.py
class BlaBlaSerializer(serializer.Modelserilizer):
def post(self):
rfiid = self.context["rfiid"]
Но вот с чистым APIView это не срабатывает. Есть какой-то аналог этого метода?
Знаю что можно передавать extra context простым словарем в сериализатор, типа такого
context = {"rfiid": kwargs.get('rfiid')}
serializer = BlaBlaSerializer(data=data, context=context)
И это работает, но в сравнении с методом как то не красиво выглядит)