【问题标题】:Django Static Images Not LoadingDjango 静态图像未加载
【发布时间】:2020-12-29 20:22:55
【问题描述】:

我在以下路径中下载了图像,但它们拒绝为我加载。知道我可能配置不正确的原因吗?

C:\Users\xxx\Python\Price Tracking\Django\mysite\polls\static\polls\images

  • stl.jpg
  • 芝加哥.jpg
  • nyc.jpg

设置:

INSTALLED_APPS = [
    'polls.apps.PollsConfig',
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'django_plotly_dash.apps.DjangoPlotlyDashConfig',
]

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

STATIC_URL = '/static/'

html:

{% load static %}

    <div id="carouselExampleControls" class="carousel slide" data-ride="carousel">
        <div class="carousel-inner">
            <div class="carousel-item active">
                <img class="d-block w-100" src="{% static 'polls/chicago.jpg' %}" alt="First slide">
            </div>
            <div class="carousel-item">
                <img class="d-block w-100" src="{% static 'polls/nyc.jpg' %}" alt="Second slide">
            </div>
            <div class="carousel-item">
                <img class="d-block w-100" src="{% static 'polls/stl.jpg' %}" alt="Third slide">
            </div>
        </div>
        <a class="carousel-control-prev" href="#carouselExampleControls" role="button" data-slide="prev">
            <span class="carousel-control-prev-icon" aria-hidden="true"></span>
            <span class="sr-only">Previous</span>
        </a>
        <a class="carousel-control-next" href="#carouselExampleControls" role="button" data-slide="next">
            <span class="carousel-control-next-icon" aria-hidden="true"></span>
            <span class="sr-only">Next</span>
        </a>
    </div>

【问题讨论】:

  • 你的 html 应该是 &lt;img class="d-block w-100" src="{% static 'polls/images/chicago.jpg' %}" alt="First slide"&gt;

标签: html django


【解决方案1】:

首先你写图片在... polls/static/polls/images/ 但在模板标签中你有/polls/xyz.jpg

对于其余部分,您需要确定您是在使用 runserver 和 Debug=True 进行开发(然后在您放置文件时从 app/static 文件夹中获取文件)还是在部署中,例如一个 Apache 服务器(然后你需要直接从 Apache 服务它们......请参阅在 django docs 上提供静态文件

【讨论】:

  • 不应该 Settings.py 文件告诉它寻找 */static/ 然后从那里开始,这会切断路径的其余部分,让我留下 path/nyc.jpg (又名我有的)?另外,这目前在我的离线服务器上127.0.0.1:7000
  • Runserver 将从您的模板标签 {% static 'path/file' %} 中查找您的应用程序/静态/+路径
  • 127.0.0.1:7000 由 runserver 或其他服务提供?
  • 我也只是尝试将 polls/nyc.jpg 更新为 polls/static/nyc.jpg 没有运气
  • 奇怪的是,有些图像可以工作,而有些图像甚至不能在同一个文件夹中......还有其他我没有想到的要求吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-05-11
  • 1970-01-01
  • 2023-04-03
  • 2019-08-31
  • 2014-11-12
相关资源
最近更新 更多