Попробуйте отобразить изображения из каталога в Django - PullRequest
0 голосов
/ 19 июня 2020

Я пытаюсь отобразить все изображения из каталога, который есть в проекте. В views.py

def showimages(request):
    path='C:\\Users\Peter\PycharmProjects\displayimages\displayimages\display\static'
    img_list = os.listdir(path)

    return render(request, 'displayphotos.html', {'images':img_list})

В файле html

{% for image in images %}

    <p>{{image}}</p>
    <img src="{% static '{{image}}' %}">

{% endfor %}

Но отображается

<p>DSC_5390.jpg</p>
<img src="/static/%7B%7Bimage%7D%7D">

<p>DSC_5392.jpg</p>
<img src="/static/%7B%7Bimage%7D%7D">

Если я напечатаю их в теге абзаца, все имена файлов правильные, но все неправильные в теге img. Как исправить?

Ответы [ 2 ]

0 голосов
/ 20 июня 2020

у вас легкая проблема, просто напишите

<img src="{% static {{image}} %}">

вместо

<img src="{% static '{{image}}' %}"> 

удалите простые кавычки

0 голосов
/ 19 июня 2020

если у вас есть изображение внутри вашей папки stati c, тогда вам сначала нужно загрузить папку stati c в файл настроек.

STATIC_URL = '/static/'

STATICFILES_DIRS = [
   os.path.join(BASE_DIR, 'static'),
]

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

<img src="{% static 'images/grad-hat.png' %}">

, иначе имя изображения

<img src="{% static 'grad-hat.png' %}">
...