как ЗАГРУЗИТЬ видеофайл в DJANGO через программу - PullRequest
0 голосов
/ 09 мая 2020

model.py

from django.db import models

class Post(models.Model):
    video = models.FileField(upload_to='filesInput/')
    csv = models.FileField(upload_to='filesInput/')
    csvTimeL = models.CharField(max_length = 50, default = '00:00:02.02')
    csvTimeR = models.CharField(max_length = 50, default = '00:00:02.4')
    urlTimeL = models.CharField(max_length = 50, default = 3)
    urlTimeR = models.CharField(max_length = 50, default = 8)
    siteUrl = models.CharField(max_length = 300)

    def __str__(self):
        return self.siteUrl

class Result(models.Model):
    inputData = models.ForeignKey(Post, on_delete = models.CASCADE)
    resVideo = models.FileField()

    def __str__(self):
        return self.resVideo.url

Итак, я хочу загрузить видеофайл в Result.resVideo Вот как я это делаю с помощью TextField:

python manage.py shell
>>> from posts.models import Post, Result
>>> a = Post.objects.get(id = 3)
a.result_set.create(text = 'text')

Проблема в том, что я не знаю, как объяснить django подключение видеофайла к Post () и самого видеофайла.

Я также получил ответ с другого форума на загрузку видео в Post ():

from django.core.files.base import ContentFile
from .models import Post

video_name = 'video.webm'
with open(video_name, 'rb') as f:
    video_content = f.read()

instance = Post()
instance.video.save(video_name, ContentFile(video_content))
instance.save()

Но мне нужно загрузить его в Result.resVideo с «подключением» к Post.

...