【问题标题】:Images not rendering in HTML on Django runserver, but HTML works in browser图像不在 Django 运行服务器上以 HTML 格式呈现,但 HTML 在浏览器中工作
【发布时间】:2012-10-12 19:36:09
【问题描述】:

使用 Django 构建站点并且我的 index.html 页面无法正确呈现图像。当我在浏览器中打开 HTML 文件时,图像可以正常加载,但是当我从 powershell 执行python manage.py runserver时,HTML 页面不会呈现任何图像。

代码如下--为什么在服务器运行时不渲染,在浏览器中打开时运行?

<!DOCTYPE html>
<head>Q&A</head>
<body>
<h1><img src="c:/users/chris/desktop/logo.jpg"></img></h1>
</body>

【问题讨论】:

    标签: python html css django image


    【解决方案1】:

    Django 需要知道静态内容的位置才能为它们提供服务。 执行以下操作:

    1. 将 settings/STATIC_DIR 的路径设置为您存储图像的位置
    2. 提供一个向客户端显示的 STATIC_URL
    3. 将您的视图代码中的 context_instance 传递给模板
    4. 使用模板 {{STATIC_URL}}path_to_your_image_from_static_dir 中的 url

    【讨论】:

      【解决方案2】:

      可能是因为文件符号不受支持。

      尝试使用file:// URI 方案。

      【讨论】:

        【解决方案3】:

        因为您的图像源应该是 URL 而不是文件路径。

        您需要将图片上传到网络服务器并链接到它的 URL,例如 http://yourdomain.com/img/logo.jpg

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2019-08-26
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2012-01-20
          • 1970-01-01
          相关资源
          最近更新 更多