Python Django本地静态文件路径难题

Python Django本地静态文件路径难题,python,django,static,http-status-code-404,Python,Django,Static,Http Status Code 404,我试图在开发过程中本地呈现静态文件。我已经按照规则将样式表放置在Django项目文件夹的/static/中,设置static\u URL='/static/'。使用{{STATIC\u URL}}模板标记可以工作,文档头中呈现的路径指向正确的目录(据我所知),例如: 这将返回404,当然,没有样式 我从项目根文件夹中的/static及其内容(即/css/bootstrap.min.css)开始。然后我把它和它的全部内容复制到所有其他的应用程序目录中,以尝试Django可能正在寻找的不同地方。仍然

我试图在开发过程中本地呈现静态文件。我已经按照规则将样式表放置在Django项目文件夹的
/static/
中,设置
static\u URL='/static/'
。使用
{{STATIC\u URL}}
模板标记可以工作,文档头中呈现的路径指向正确的目录(据我所知),例如:

这将返回404,当然,没有样式

我从项目根文件夹中的
/static
及其内容(即
/css/bootstrap.min.css
)开始。然后我把它和它的全部内容复制到所有其他的应用程序目录中,以尝试Django可能正在寻找的不同地方。仍然是404

settings.py
中的相关设置:

DEBUG = True

STATIC_URL = '/static/'

INSTALLED_APPS = (
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.sites',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'django.contrib.humanize',
    'south',
    'users',
    'registration',
    'django_extensions',
    'django.contrib.admin',
)
怎么了


Matt

你的
url.py
看起来像什么?您是否忘记包含静态文件url?如果您查看有关提供静态文件的文档,建议将以下内容放入
url.py

from django.contrib.staticfiles.urls import staticfiles_urlpatterns

# ... the rest of your URLconf goes here ...

urlpatterns += staticfiles_urlpatterns()

这很有效。我曾考虑过这个选项,但文档中的以下行却说服了我:
此视图将自动启用,并且在使用内置的runserver管理命令时,将以静态URL为静态文件提供服务。如果您使用其他服务器进行本地开发,为了启用此视图,您需要在URLconf中添加几行。
因为我使用的是runserver,所以我推断URLconf内容是不必要的。但是你是对的,谢谢。我很高兴它解决了你的问题,但是我和你一样阅读文档,所以我认为这可能不是正确的做法。您的
安装的应用程序中是否确实有
django.contrib.static文件
?或者你的urls.py中有一个东西,它可以捕获之后的所有内容,因此staticfiles应用程序中的url永远无法访问?
staticfiles
正如你所说,是一个已安装的应用程序。我没有使用staticfiles上下文处理器,但默认情况下是这样的(这就是标记工作的原因)。我在URL中看不到任何导致问题的东西,但在将来的疑难解答中,我会一直关注到这一点。听起来问题很可能就在那里。谢谢
from django.contrib.staticfiles.urls import staticfiles_urlpatterns

# ... the rest of your URLconf goes here ...

urlpatterns += staticfiles_urlpatterns()