Как передавать данные сериализаторам в django
Я хочу передавать user_id из представления в сериализатор У меня есть модель Ответ
class Answer(models.Model) :
text = models.CharField(max_length=500)
question_id = models.CharField(max_length=25)
user_id = models.CharField(max_length=25, default=1)
Это мой сериализатор
class CreateAnswer(generics.CreateAPIView) :
def get_serializer_context(self):
context = super().get_serializer_context()
context["id"] = self.request.user.id
return context
serializer_class = AnswerQuestionSerializer
queryset = Answer.objects.all()
Что мне нужно написать в моем представлении, чтобы взять user_id и создать модель с этим user_id ?
Вы можете переопределить метод perform_create
& передать поле user_id
в метод save
сериализатора.
class CreateAnswer(generics.CreateAPIView) :
serializer_class = AnswerQuestionSerializer
def perform_create(self, serializer):
serializer.save(user_id=self.request.user.id)