Django автоматическое сохранение текущего пользователя в модели при сохранении

Я пытаюсь сохранить пользователя автоматически при сохранении новых данных. Это работает, если я жестко закодировал user-id get(id=2). Как сделать идентификатор динамическим?


models.py
class Feedback(models.Model):
       .
       .
    author = models.ForeignKey(
        get_user_model(),
        on_delete=models.CASCADE,
        editable=False,
        )

    def save(self, *args, **kwargs):
        self.author = get_user_model().objects.get(id=2)    @@@@@@@@@@@@@@@@@
        return super().save(*args, **kwargs)

ListCreateAPIView не имеет метода form_valid, посмотрите на this

В вашем class FeedbackListView нужно сделать что-то вроде этого:

class FeedbackListView(generics.ListCreateAPIView):
    queryset = Feedback.objects.all()
    serializer_class = FeedbackSerializer

    def perform_create(self, serializer):
        # The request user is set as author automatically.
        serializer.save(author=self.request.user)
Вернуться на верх