Я пытаюсь отобразить файл из набора внешних ключей экземпляра модели.Файл может быть как видео, так и картинкой и загружен пользователями (аналогично Instagram).Как правильно отобразить файл как <video>
или <img>
в зависимости от типа загруженного файла?
В настоящее время я использую теги <video>
или <img>
в html, чтобы показать файл, и ониоба работают, но только если файл имеет соответствующий тип.Если файл другого типа, неправильный тег будет показывать черный ящик на сайте.
{% if result.resultfile_set.all %}
{% for resultfile in result.resultfile_set.all %}
<video controls>
<source src="{{ resultfile.file.url }}">
</video>
<img src="{{ resultfile.file.url }}" />
<p>Caption: {{ resultfile.caption }}</p>
{% endfor %}
{% endif %}
Ожидаемые результаты состоят в том, что если файл, который был загружен пользователем, является видеофайлом, отобразите его как таковой;или, если файл является файлом изображения, отобразите его как изображение.Вместо этого я в настоящее время могу только отображать оба типа файлов каждый раз, когда один из них отображается правильно, а другой отображается как черный ящик