我能够根据djangoproject提供的教程加载css文件,但图像没有加载。 这是文件结构: appname / static / mess / img / burger.jpg
这是我尝试加载图片的login.html文件。
`<html>
<head>
<title>Login | Mess @ IIIT Sri City</title>
{% load staticfiles %}
<link rel="stylesheet" type="text/css" href="{% static 'mess/css/style.css' %}">
<link rel="stylesheet" type="text/css" href="{% static 'mess/css/bootstrap.min.css' %}">
</head>
<body>
<div class="container">
<div id="left-content" class="col-lg-6 col-md-6 col-sm-12 col-xs-12">
{% load staticfiles %}
<center><img src="{% static 'mess/img/burger.jpg' %}" alt="Please Login here"></center>
</div>
<div class="col-lg-6 col-md-6 col-sm-12 col-xs-12">
<form action="" method="post">{% csrf_token %}
{{ form}}
<input type="submit" value="Submit" />
</form>
</div>
</div>
</body>
`
如果你可以解决这个问题,那将是一个很大的帮助。 PS:我是Django的初学者。 Django版本:1.8 请告诉我你是否需要更多信息。提前致谢。
答案 0 :(得分:1)
这是因为该文件夹没有必要的权限,Django无法访问它。
答案 1 :(得分:0)
配置了静态文件吗?
if settings.DEBUG:
urlpatterns += patterns('',
#REMOVE IT in production phase
(r'^media/(?P<path>.*)$', 'django.views.static.serve',
{'document_root': settings.MEDIA_ROOT})
)
urlpatterns += staticfiles_urlpatterns()
答案 2 :(得分:0)
这里有一些变化。您可以为您的模板复制并粘贴以下代码,以及urls.py中的设置:
<强> HTML:强>
{% load staticfiles %}
<html>
<head>
<title>Login | Mess @ IIIT Sri City</title>
<link rel="stylesheet" type="text/css" href="{% static 'mess/css/style.css' %}">
<link rel="stylesheet" type="text/css" href="{% static 'mess/css/bootstrap.min.css' %}">
</head>
<body>
<div class="container">
<div id="left-content" class="col-lg-6 col-md-6 col-sm-12 col-xs-12">
<center><img src="{% static 'mess/img/burger.jpg' %}" alt="Please Login here" /></center>
</div>
<div class="col-lg-6 col-md-6 col-sm-12 col-xs-12">
<form action="" method="post">{% csrf_token %}
{{ form }}
<input type="submit" value="Submit" />
</form>
</div>
</div>
</body>
</html>
<强>网址:强>
if settings.DEBUG:
urlpatterns += patterns('',) + static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)
urlpatterns += patterns('',) + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
在html中,我在顶部添加了{% load staticfiles %}
以保持代码干净(不要重复自己)。我还对您的代码进行了一些语法更改;很小的。在网址中,当您的设置设置为DEBUG = True
时,Django将加载您的静态图像。当你进入制作和DEBUG = False
时,Django不再提供静态文件。这是您的服务器的责任。
我希望有所帮助。
如果仍然无效,请您发布STATIC_URL
和STATIC_ROOT
吗?