Django models Django Rest框架匿名用户错误

Django models Django Rest框架匿名用户错误,django-models,django-rest-framework,Django Models,Django Rest Framework,我在尝试“发布”时出现以下错误 我不清楚问题是什么 ValueError: Cannot assign "<django.contrib.auth.models.AnonymousUser object at 0x7ffb62f48a00>": "Video.user" must be a "User" instance. 型号: class Video(models.Model): user = models.F

我在尝试“发布”时出现以下错误 我不清楚问题是什么

ValueError: Cannot assign "<django.contrib.auth.models.AnonymousUser object at 0x7ffb62f48a00>": "Video.user" must be a "User" instance.
型号:

class Video(models.Model):
    user = models.ForeignKey(
        settings.AUTH_USER_MODEL, related_name='user',
        on_delete=models.CASCADE
    )
    title = models.CharField(max_length=30, blank=False)
    video = models.FileField(blank=False, upload_to=upload_path_video)
    thumbnail = models.ImageField(blank=True, upload_to=upload_path_thum)
    like = models.IntegerField(default=0)
    dislike = models.IntegerField(default=0)
    create_on = models.DateTimeField(auto_now_add=True)
    scores = models.IntegerField(default=0)
    hits = models.IntegerField(default=0)

    class Meta:
        ordering = ['-create_on']

    def __str__(self):
        return str(self.title)
视图:


我尝试在已登录时创建视频,但出现错误。

这是否回答了您的问题?
class Video(models.Model):
    user = models.ForeignKey(
        settings.AUTH_USER_MODEL, related_name='user',
        on_delete=models.CASCADE
    )
    title = models.CharField(max_length=30, blank=False)
    video = models.FileField(blank=False, upload_to=upload_path_video)
    thumbnail = models.ImageField(blank=True, upload_to=upload_path_thum)
    like = models.IntegerField(default=0)
    dislike = models.IntegerField(default=0)
    create_on = models.DateTimeField(auto_now_add=True)
    scores = models.IntegerField(default=0)
    hits = models.IntegerField(default=0)

    class Meta:
        ordering = ['-create_on']

    def __str__(self):
        return str(self.title)
class VideoViewSet(viewsets.ModelViewSet):
    queryset = Video.objects.all()
    serializer_class = serializers.VideoSerializer
    authentication_classes = (authentication.TokenAuthentication,)
    permissions_classes = (permissions.IsAuthenticated,)

    def perform_create(self, serializer):
            serializer.save(user=self.request.user)