【问题标题】:Load static files with django template tag使用 django 模板标签加载静态文件
【发布时间】:2017-07-28 10:31:00
【问题描述】:

我正在尝试加载保存在静态目录中的图像文件,但这似乎没有这样做

<div>
  {% thumbnail image.user.profile.photo "40" as in %}
     <a href="{{ image.user.get_absolute_url }}">
         <img src="{{ in.url }}" class="gametime"></a>

  {% endthumbnail %}
  <a href="{{ image.user.get_absolute_url }}" class="time">{{image.user.username }}  </a>    
</div>

<div id="details">
 {% thumbnail image.image "551" as im %}

     <a href="{{ image.image.url }}">
         <img src="{{ im.url }}" alt="{{ image.title }}"class="image-detail">
     </a>

 {% endthumbnail %}
</div>

我试过&lt;img src="{% static "rango.jpg" %}" alt="Picture of Rango"&gt;,它显示了rango.jpg图像。

我想我需要{% static %} 标记来使用图像变量完成此操作,但仍然没有正确处理。

【问题讨论】:

  • 您可能需要指定 url 模式 来加载静态文件(或使用 Django 工具来执行此操作)
  • 你看过docs.djangoproject.com/en/1.11/howto/static-files - 你使用{% static %} 的方法是正确的。描述为什么它不适合你。
  • 看起来您的 image 是具有 image ImageField 的模型。如果是这种情况,它们不会存储在static 目录中,而是存储在media 中。并且记录了如何为它们提供服务:对于开发(开发服务器),请阅读 docs.djangoproject.com/en/1.11/howto/static-files/…,对于生产,它们应该由您的前端服务器提供服务 cf timmyomahony.com/blog/…
  • @brunodesthuilliers 是的,你是对的。图像是一个 ImageField。注意:我处于生产和部署阶段。所以我想我需要重新配置我的设置。上述设置在开发中工作正常,但我在生产中遇到问题。有什么提示吗??
  • @brunodesthuilliers 我想我应该补充一点,我的图像模型 upload_to 设置为 /home/kingiyk/stylplus/static 并且我的图像上传到那里。

标签: python django static django-templates


【解决方案1】:

你是否在设置文件中设置了静态路径。

STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(BASE_DIR, 'static/')

【讨论】:

    猜你喜欢
    • 2014-01-09
    • 1970-01-01
    • 1970-01-01
    • 2016-03-02
    • 2020-10-02
    • 1970-01-01
    • 1970-01-01
    • 2015-04-08
    • 1970-01-01
    相关资源
    最近更新 更多