В моем файле 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 создаст экземпляр этой модели, я хочу установить поле gif
на сайте Django , Итак, данные поступают на Django с клиентского сайта с установленным полем video
, и на основе содержимого поля video
я хочу заполнить поле gif
.
Для того, что create()
метод мне нужно переопределить для этой задачи? Метод create()
моего VideoSerializer
класса в serializers.py
:
def create(self, validated_data):
return Video(**validated_data)
Или метод create () моего VideoCreate
класса в views.py
:
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)
Надеюсь, что кто-то может помочь