Я пытаюсь создать сайт галереи, но я не могу найти изображения для отображения в html. Я пытаюсь получить изображения из базы данных на основе filter_type
, который имеет значение как изображение.Получить изображение в django
До сих пор у меня есть это:
В views.py
def gallery(request):
img = Upload.objects.filter(file_type='image')
return render(request,'gallery.html',{"img":img})
и html
:
{% for n in img %}
<img src="{{ n.img}}" />
{% endfor %}
Мой models.py
выглядит следующим образом:
class Upload(models.Model):
image = models.ImageField(upload_to='media/image',default='')
text_field = models.CharField(max_length=200,default='')
date_added = models.DateTimeField(auto_now_add=False,auto_now=True)
file_type = models.CharField(max_length=256, choices=[('image', 'image'), ('video', 'video'), ('other', 'other')])
class Meta:
verbose_name_plural = "Files Manager"
Я также установил MEDIA_URL
и MEDIA_ROOT
. Из Admin я могу загружать изображения, и они в порядке.
мой MEDIA_URL
:
MEDIA_ROOT = os.path.join(BASE_DIR,'static','media')
MEDIA_URL = '/media/'
Когда я осматриваю из HTML src
путь пуст.
Вы пробовали ''? Вместо ''. – jlnabais
да еще пуст. Если в проекте больше информации, я могу разместить больше. Он по-прежнему пуст. – Victor
Можете ли вы сделать 'print (img)' (если вы используете python3 или 'print img' для python2) после' img = Upload.objects.filter (file_type = 'image') 'и вставьте сюда то, что вы видите в Журнал консоли django? – jlnabais