簡體   English   中英

Django 在模板中加載一個 imageField

[英]Django load an imageField in a template

問題已刪除。問題已刪除。問題已刪除。問題已刪除。

我首先要檢查的一件事是確保 URL 確實在模板中正確顯示。 您可以通過像這樣創建一個虛擬跨度來做到這一點:

<span>{{ post.thumbnail.url }}</span>

把它放在某個地方,渲染頁面,看看你得到了什么。 確保 URL 是正確的 URL。 有時,當您弄亂媒體 URL 和根目錄時,事情會變得有點不穩定。

更新:根據您最近的編輯,我看到了兩個危險信號:一個是您的標題部分已顯示您的身體。 二是您似乎沒有遍歷 ListView 作為上下文傳遞的對象列表。 正如我所解釋的,您的列表視圖正在傳遞一個帖子列表。 如果是這種情況,您的代碼應如下所示:

<header>
  <a href="../../../.." id="home-btn"></a>
  <script
          src="https://code.jquery.com/jquery-3.4.1.min.js"
          integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo="
          crossorigin="anonymous"></script>
  <script type='text/javascript'>
    window.addEventListener('scroll', function() {$('#top-bar').width(Math.round($(document).scrollTop()/document.body.offsetHeight*100*1.1)+'%');});
  </script>
</header>
<body>
    <div id='top-bar'></div>
    {% for post in posts %}
        <h1 id='title'>{{ post.title }}</h1>
        <p id='author-info'>Published {{ post.publish }} by {{ post.author }}</p>
        <img src="{{ post.thumbnail.url }}">
    {% endfor %}
</body>

盡管如此,您的整個 HTML 文檔還是有些偏差。 您需要添加 DIV 元素或網格表元素以更恰當地呈現上述內容。

另一件事:由於您使用列表視圖,您可能希望在您的問題中發布部分模板代碼。 作為列表視圖,您必須確保正確循環遍歷作為上下文發送到模板的對象。

其他所有內容是否都按照您的意圖顯示在您的模板渲染中? 只是圖像顯示不正確嗎?

暫無
暫無

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

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