簡體   English   中英

為什么我不能使用 jinja 模板將靜態圖像文件的位置從我的 Django 視圖傳遞到我的 html 文件?

[英]Why can't I pass the location of a static image file from my Django view to my html file using jinja templating?

我試圖通過將 .jpg 文件的名稱從視圖傳遞到 html jinja 模板來將圖像添加到 HTML 頁面。 該圖像位於靜態文件夾中,如果直接編碼文件名,則會根據需要顯示,但當我嘗試通過 Jinja 傳遞它時則不會。

Django查看代碼:

def page(request):

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

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

HTML頁面上的代碼:

{% load static %}

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

圖像文件位於 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"> 

圖像根據需要呈現。

我覺得有些地方我誤解了,但我不確定是什么。 我在搜索時找不到另一個詢問如何執行此操作的問題,所以如果您知道我沒有找到的答案,請原諒我!

好的...所以這有效:

location = "\image.jpg"

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

位置變量名稱開頭的額外斜線是缺失的! 不敢相信就這么簡單。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM