我正在使用this guide尝试让这项工作正常进行。基本上,我正在探索django 1.6(在Mac OS X Yosemite beta上使用python 2.7.6),仍在使用股票开发服务器。我试图包含一个CSS文件来覆盖管理区域中的某些样式。我的项目根目录中有一个static
文件夹。我的settings.py是完全库存(这意味着我将DEBUG设置为true并且我使用django.contrib.staticfiles
)。检查源和请求/响应表明我在我预期的路径上调用CSS文件,但是在尝试加载时我得到了404。尝试直接在浏览器中点击CSS文件时,我也得到404。我已经搜索过google和SO,但还没有找到答案。
请求的CSS文件:
http://*mysite*/static/admin/css/mysite-admin.css
CSS文件的文件系统路径:
*myprojectdir*/static/admin/css/mysite-admin.css
答案 0 :(得分:0)
是的,它不起作用,因为Django不提供默认的静态资产,为了在你的主urls.py文件中提供静态资产(请注意本地开发的情况应该是这种情况)将此添加到顶部:
from django.contrib.staticfiles.urls import staticfiles_urlpatterns
然后在你的urls.py结尾:
if settings.DEBUG:
urlpatterns = patterns('',
url(r'^media/(?P<path>.*)$', 'django.views.static.serve', # NOQA
{'document_root': settings.MEDIA_ROOT, 'show_indexes': True}),
) + staticfiles_urlpatterns() + urlpatterns
确保在settings.py中定义了STATIC_URL,MEDIA_ROOT和MEDIA_URL,以便开发STATIC_ROOT。