Django rest framework save()得到一个意外的关键字参数';所有者';

Django rest framework save()得到一个意外的关键字参数';所有者';,django-rest-framework,django-serializer,Django Rest Framework,Django Serializer,models.py class Video(models.Model): obj = models.FileField() owner = models.ForeignKey(Profile,on_delete=models.CASCADE) dis = models.TextField() title = models.ForeignKey(Title,on_delete=models.CASCADE,default=0) def __str__(self): return self.

models.py

class Video(models.Model):
obj = models.FileField()
owner = models.ForeignKey(Profile,on_delete=models.CASCADE)
dis = models.TextField()
title = models.ForeignKey(Title,on_delete=models.CASCADE,default=0)
def __str__(self):
    return self.dis
序列化程序.py

class VideoSerializer(serializers.ModelSerializer):
#owner = serializers.PrimaryKeyRelatedField(many=False, read_only=True)
class Meta:
    model = Video
    fields = ['obj','dis','owner','title']

def save(self,validated_data):
    request = self.context.get("request")
    v = Video(
        obj = validated_data.get('obj'),
        dis = validated_data.get('dis'),
        owner = Profile.objects.get(user=request.user),
        )
    v.save()
    return v
    

   

def update(self, instance, validated_data):
    request = self.context.get("request")
    instance.title = validated_data.get('title',instance.title)
    instance.dis = validated_data.get('dis', instance.dis)
    if instance.owner == request.user:
        instance.save()
        return instance
views.py

class VideoView(viewsets.ModelViewSet):
serializer_class = VideoSerializer
queryset = Video.objects.all()

def perform_create(self, serializer):
    user = self.request.user
    serializer.save(owner=Profile.objects.get(user=user))
嗨,伙计们!我试图用DRF序列化程序在数据库中保存模型&我得到一个错误。。。。
如果您能帮助我,我将不胜感激。我的错误在序列化程序中的save()方法中

您不应该重写方法定义中的
save
参数。相反,请使用以下命令:

def save(self):
    owner = self.validated_data.get('owner')
    ...
参考: