Почему я не могу передать местоположение файла изображения stati c из моего Django вида в мой html файл с использованием шаблонов jinja? - PullRequest
0 голосов
/ 27 января 2020

Я пытаюсь добавить изображение на страницу HTML, передавая имя файла .jpg в шаблон jinja html из представления. Изображение находится в папке stati c и будет отображаться по желанию, если имя файла закодировано напрямую, но не при попытке передать его через Jinja.

Django просмотр кода:

def page(request):

   location = '''src="{% static 'image.jpg' %}"'''

   return(render(request, 'page.html', {'location':location})

Код на странице HTML:

{% load static %}

<img {{location}} alt="image">

Файл изображения находится в папке stati c по адресу root проекта Django

Я также пробовал другие комбинации строк для передачи и HTML, включая:

location = '''"{% static 'image.jpg' %}"'''
<img src={{location}} alt="image"> 

location = "'image.jpg'"
<img src= "{% static {{location}} %}" alt="image"> 

Когда я кодирую имя файла непосредственно следующим образом:

<img src= "{% static "image.jpg" %}" alt="image"> 

изображение представляется по желанию.

Я чувствую, что что-то неправильно понимаю, но я не уверен, что именно. Я не мог найти другой вопрос, спрашивающий, как это сделать, когда я искал, поэтому, пожалуйста, прости меня, если знаешь ответ, который я не нашел!

1 Ответ

0 голосов
/ 27 января 2020

ОК ... так что это работает:

location = "\image.jpg"

<img src= "{% static location %}" alt="things">

Этот лишний элемент sh в начале имени переменной местоположения был тем, чего не хватало! Не могу поверить, что это было так просто.

...