【问题标题】:Django CSS & Static Media Not LoadingDjango CSS 和静态媒体未加载
【发布时间】:2012-10-03 16:09:29
【问题描述】:

所以在过去的一个小时里,我一直在碰壁,似乎无法弄清楚为什么在我的模板被渲染时没有静态媒体(CSS、图像、JS 等)。 有人可以帮我找出我需要进行调整的原因吗?以下是来自 Settings.py、Index.html 和样式表的 sn-ps,如果需要更多信息,请告诉我。

我的静态文件位于以下目录: /djangoproject/网站/静态

Settings.py    -  Located /djangoproject/djangoprojectname/
STATIC_ROOT = os.path.normpath(os.path.join(PROJECT_ROOT,
"/static/"))

STATIC_URL = '../website/static/'

这是我 index.html 中的一个 sn-p,它应该使用 {{ STATIC_URL }}

调用 css 样式表
Index.html  - Location /djangoproject/website/templates/  
<link rel="stylesheet" href="{{ STATIC_URL }}css/style.css">

CSS 样式表的位置

style.css - Location /djangoproject/website/static/css/

【问题讨论】:

  • 页面渲染时,你在模板中{{ STATIC_URL }}所在的源代码中看到了什么?
  • /projects/djangoproject/website/static/css/style.css 据我所知,这是正确的路径......它仍然没有拉文件......有什么东西我应该可能会添加到 urls.py 或其他东西?
  • stackoverflow.com/questions/12819395/… 这可能会有所帮助

标签: django django-templates


【解决方案1】:

来自 Django 文档:

如果 {{ STATIC_URL }} 在您的模板中不起作用,您可能 渲染模板时不使用 RequestContext。

作为一个简短的复习,上下文处理器将变量添加到 每个模板的上下文。但是,上下文处理器要求 渲染模板时使用 RequestContext。有时候是这样的 如果您使用的是通用视图,但在由 你需要明确地使用 RequestContext 来看看如何 有效,要阅读更多详细信息,请查看Subclassing Context:RequestContext

【讨论】:

    【解决方案2】:

    在我看来,您正在将 STATIC_URL 设置为路径,而它应该设置为 URL。您需要将此设置为包含您的 css 文件的文件夹的网址,例如:

    STATIC_URL = 'http://mydomain.com/static_files/'
    

    尝试通过在浏览器中输入您希望它出现的地址来在线查找您的 CSS 文件。以这种方式找到 CSS 文件后,只需复制将您带到那里的根 URL。

    【讨论】:

      猜你喜欢
      • 2011-08-06
      • 1970-01-01
      • 2020-08-31
      • 2017-06-21
      • 2018-02-03
      • 1970-01-01
      • 2020-04-28
      • 2022-01-20
      • 2022-01-04
      相关资源
      最近更新 更多