Я использую S3 в качестве хранилища мультимедиа в Django. Дело в том, что если видео загружено, то ответ на просмотр занимает слишком много времени. Я знаю, что должен быть способ сделать это asyn c.
фрагмент view.py
with transaction.atomic():
media = Media(
med_user_id=account,
med_path=file,
med_thumbnail=thumbnail,
med_assoc_data=data,
)
save_async.delay(media)
переменная файл is видео с этим классом <class 'django.core.files.uploadedfile.TemporaryUploadedFile'>
, когда я сохраняю это на media.save()
, это занимает 12-20 секунд. Я думал создать задачу сельдерея, которая справится с этим.
@app.task(bind=True)
def save_async(self, instance):
instance.save()
Я знаю, что это не имеет никакого смысла, потому что это выдает ошибку сериализации. Object of type Media is not JSON serializable
так что вопрос в том. как мне сделать model.save()
функцию асин c с сельдереем?
Заранее спасибо.