python - Django:GET css 返回 404?

标签 python css django http-status-code-404 urlconf

我正在开发一个 Django 网站,经过一系列编辑后,我突然再次运行我的服务器 - 没有 css!当然,服务器仍然显示 html 站点,但整个站点的 css 都会抛出 404 错误。我的 settings.py 中的静态文件信息根本没有被编辑:

import os
# hack to accommodate Windows
CURRENT_PATH = os.path.abspath(os.path.dirname(__file__).decode('utf-8')).replace('\\', '/')

STATIC_URL = '/static/'

# Additional locations of static files
STATICFILES_DIRS = (
    os.path.join(CURRENT_PATH, 'static'),
)

我的基本模板根据静态文件目录对文件进行简单的调用:

<link rel="Stylesheet" type="text/css" href="{{ STATIC_URL }}css.css" />

最后,当然,这是我的相关目录结构的快速分割,因为我怀疑该错误是某种目录问题:

-project-
     settings.py
     -static-
         css.css
     -templates-
         base.html
         index.html

我只提供了index.html的位置,但是templates文件夹当然充满了各种模板/页面的目录。

在排除故障/收到答案时,我会随时更新此问题的信息。

最佳答案

为了使静态 URL 在开发平台上正常工作,您需要执行许多操作。

为此,我建议浏览并阅读此链接。 https://docs.djangoproject.com/en/dev/howto/static-files/

除此之外,您还需要从 View 返回请求上下文。

请注意,在您的 urls.py 文件中,您还需要添加以下行。

urlpatterns += staticfiles_urlpatterns()

此行允许开发服务器内的 URL 模块提供静态文件。

我还注意到您的 os.path.join 代码中有一个变量。如果您使用基本的 django 设置,os.path.join 将已经指向您的开发目录。

您应该能够使用:

# Additional locations of static files
STATICFILES_DIRS = (
    os.path.join('static'),
)

注意:还要确保您的 View 返回请求上下文,因为这是填充 STATIC_URL 变量所必需的。同样,确保您拥有所有 TEMPLATE_CONTEXT_PROCESSORS添加到 settings.py 文件

关于python - Django:GET css 返回 404?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15641603/

相关文章:

html - 将 div 调整到表格单元格的一侧

html - 复选框样式在 Internet Explorer 中不起作用

Django 模板,从子级到父级的变量?

django - 403 由 Graphite 烯-django。不要使用 csrf_exempt

python - 如何使用python解析基于缩进的层次结构

Python DictReader - 跳过缺少列的行?

python - 追加到json,python中的字典文件

python - 属性错误 : 'DataFrame' object has no attribute 'ix'

android - 在移动 iOS 和 android 上停止 overflow-x

Django 日志记录不输出到 nginx 服务器上的日志文件