create(self, request):
user = {'user': request.user.id}
data = {**request.data, **user}
serializer = TodoSerializer(data=data)
serializer.is_valid(raise_exception=True)
serializer.save()
return Response('done')
Можно и так, но как по мне лучше лучше брать юзера из self.context в сериалайзере
Спасибо, а можно пример небольшой?
Если используешь дженерики или вюсети, есть хук perform_create (в CreateModelMixin) в котором можно добавить все необходимые поля до того, как данные попадут в serializer. def perform_create(self, serializer): serializer.save(user=self.request.user)
Спасибо, это работает отлично.
Обсуждают сегодня