Python: Отображение либо видео, либо файла изображения, но он показывает оба
Я работал над сайтом социальной сети, где можно загружать изображения и видео и следить за другими пользователями.
Мне удалось загрузить и отобразить загруженные файлы на сайте.
Я использовал FileField для загрузки изображений и видео файлов, но когда я внедряю его в свой шаблон, он показывает оба пробела, потому что оба используют один и тот же источник url {{ source.file.url }}
models.py
class Post(models.Model):
title = models.CharField(max_length=150)
file = models.FileField(upload_to='uploads/%Y-%m-%d')
код модели работает идеально
feeds.html
{% if post.file.url %}
<video class="video-context" width="500px" height="500px" controls>
<source src="{{ post.file.url }}" type="video/mp4">
</video>
{% endif %}
{% if post.file.url %}
<img class="image-context" src="{{ post.file.url }}" type="image/jpg" type="image/jpeg">
{% endif %}
показывает скриншот пустой видеоплеер над img
Теперь проблема в том, что оба типа файлов проходят через одну Model: FileField. Источник - {{ source.file.url }} , HTML ищет оба файла, но там только либо изображение, либо видео, так что я могу сделать с другим пустым файлом?
Как я могу это скрыть?
Вы можете использовать ссылку на скачивание без указания типа файла.
<a href src="{{ post.file.url }}">