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)
Спасибо, это работает отлично.
Обсуждают сегодня