我的models.py
文件中具有以下模型:
class Video(models.Model):
created = models.DateTimeField(auto_now_add=True)
text = models.CharField(max_length=100, blank=True)
video = models.FileField(upload_to='Videos/',
blank=True)
gif = models.FileField(upload_to='Images/',
blank=True)
class Meta:
ordering = ('created', )
在Django创建此模型的实例之前,我想在Django站点上设置gif
字段。
因此,数据是通过设置了video
字段从客户端站点发送到Django的,并且基于video
字段的内容,我想填充gif
字段。
为此,我需要重写哪个create()
方法来执行此任务?
我在create()
中的VideoSerializer
类的serializers.py
方法:
def create(self, validated_data):
return Video(**validated_data)
或者我的VideoCreate
中的views.py
类的create()方法:
class VideoCreate(generics.CreateAPIView):
queryset = Video.objects.all()
serializer_class = VideoSerializer
parser_classes = (MultiPartParser, )
def create(self, request, *args, **kwargs):
serializer = self.get_serializer(data=request.data)
serializer.is_valid(raise_exception=True)
self.perform_create(serializer)
headers = self.get_success_headers(serializer.data)
return Response(serializer.data, status=status.HTTP_201_CREATED, headers=headers)
希望有人可以提供帮助