Django загрузка аудио, видео и изображений - PullRequest
0 голосов
/ 05 мая 2020

Я так долго пытался решить эту проблему, кто-нибудь, пожалуйста, помогите мне. Так что я новичок ie, я django и изучаю это. Я сделал приложение, в котором можно загружать файлы. Я использовал поле файла в своих моделях, но проблема в том, что если я хочу загрузить файл изображения, мне нужно использовать тег img в html, и если я хочу загрузить видео, я должен использовать тег видео и аналогично для аудио Мне нужно использовать аудиотег, но проблема в том, что если я загружаю видео, оно не отображается в теге img, и наоборот. Итак, как мне сделать так, чтобы пользователь просто загрузил файл, и он автоматически использовал требуемый тег в html, как и в instagram, вы можете загружать видео-аудио-изображение. Если кто-нибудь что-нибудь знает, пожалуйста, помогите, пожалуйста, пожалуйста.

1 Ответ

1 голос
/ 05 мая 2020

Вы можете создать свойство в своей модели, которое возвращает тип файла, и вы можете использовать его, чтобы определить, является ли он видео, аудио или изображением.

Что-то вроде этого

class YourModel(models.Model):
    file = models.FileField(upload_to='file_path')

    def extension(self):
        name, extension = os.path.splitext(self.file.name)
        return extension

даже вы можете сделать

class YourModel(models.Model):
    file = models.FileField(upload_to='file_path')

    def extension(self):
        name, extension = os.path.splitext(self.file.name)
        if extension in ['mp3', 'wav', ...]:
            return 'audio'
        if extension in ['mp4', 'mpg', 'mpeg', ...]:
            return 'video'
        if extension in ['jpg', 'jpeg', 'png' ....]:
            return 'image'

Надеюсь, это вам поможет :)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...