我的导航栏有以下CSS代码:
#footer-navigation {
background: #1841c8 url('../images/nav_background.gif');
height: 40px;
padding: 0 0 0 20px;
}
然而,当我启动本地开发服务器时,即使图像存在于该位置,它也会给我以下内容:
"GET /images/nav_background.gif HTTP/1.1" 404 1795
我正在运行Django 1.3.1,我正在使用django.views.static.serve。
答案 0 :(得分:3)
"GET /images/nav_background.gif HTTP/1.1" 404 1795
找不到您要使用的图像。我建议你按照以下步骤操作:
您可以尝试以下步骤:
打开您的settings.py和
在文件的第一行添加:
import os.path
将您的STATIC_ROOT值更改为:
STATIC_ROOT = os.path.join(PROJECT_DIR, 'static/')
将您的STATIC_URL值更改为:
STATIC_URL = '/static/'
在项目根目录中创建名为“static”的文件夹。
打开项目的urls.py
将此添加到网址模式:
(r'(?:.*?/)?(?P<path>(css|jquery|jscripts|images)/.+)$', 'django.views.static.serve', {'document_root': settings.STATIC_ROOT }),
注意:在此示例中,我的静态文件夹中有名为css,jquery,jscripts和images的文件夹。
在您的模板中添加:
用于css文件:(在本例中,default.css是css文件的名称)
<link href="/{{ STATIC_ROOT }}css/default.css" rel="stylesheet" type="text/css" media="all" />
for javascript:
<script type="text/javascript" src="/{{ STATIC_ROOT }}jquery/jquery.js"></script>
然后将您的代码更改为:
#footer-navigation {
background: #1841c8 url(images/nav_background.gif);
height: 40px;
padding: 0 0 0 20px;
}
答案 1 :(得分:1)
尝试在设置中将MEDIA_ROOT
设置为图片所在的位置,然后使用
{{ MEDIA_URL }}nav_background.gif
编辑:
JakubGocławski是对的。您的问题似乎是图像不存在于您认为存在的位置。如果您仍然遇到问题,请告诉我们您访问localhost时获得的内容:8000 /&lt; <图像的路径>