我想让django来展示照片。我已经安装了PIL并且接缝工作。 我正在运行py 2.7,win 7,开发服务器和sqlite3
我的静态根:
STATIC_ROOT = r'H:/netz2/skateproject/static/'
我在这个文件夹中有一张背景图片,可以通过
访问它http://127.0.0.1:8000/static/images/lomax.jpg
现在我试图通过图像字段上传图片&管理员。它工作正常,图片落在正确的文件夹(香港专业教育学院已经改变了文件夹一百万次,看看是否可能是问题)但图片无法显示。
我模特的一部分:
class Sk8(models.Model):
name = models.CharField(max_length=50, default='name of the model')
bild1 = models.ImageField(upload_to="uploads/")
我的媒体根:
MEDIA_ROOT = r'H:/netz2/skateproject/media/'
图片落在右侧文件夹中。 NETZ / skateproject /媒体/ pic.jpg
但是像localhost这样的接缝无法访问此文件夹。当我尝试 - 我得到一个404和django告诉我,网址与我在我的网址中定义的任何内容都不匹配。 这是真的 - 但我也没有为静态文件夹中的背景图像定义网址 - 我可以很好地访问这个网址。
我也尝试从我的html模板访问该文件,如下所示:
{% extends "grundgerüst.html" %}
{% block inhalt %}
<div id='skatelist'>
{% for sk8 in skates %}
<p><a href="/skates/{{sk8.slug}}/">{{sk8}}</a></p>
<p><img src="{{sk8.bild.url}}"/></p>
{% endfor %}
</div>
{% endblock %}
显然图片没有出现。
我不知道这里有什么问题。我想我可以在localhost上看到这张照片吗? 继承人错误铬的照片给了我
如果在图片中文件夹与代码示例中的文件夹不同,那是因为我改变了它们测试不同的设置。
我真的希望有人可以帮我弄清楚image_field,如果我无法显示上传图片没有多大意义:)
提前谢谢! danielll
ouh和 - 我已经尝试过google和django参考等等。老实说,我无法弄明白这一点。各种帮助表示赞赏!
答案 0 :(得分:1)
当处于DEBUG模式[ref]时,Django的contrib.staticfiles应用将monkeypatch你的网址提供静态文件。不幸的是,媒体文件无法说明。
将以下代码段添加到项目urls.py以显示媒体
django.conf import settings
if settings.DEBUG:
urlpatterns += patterns('',
url(r'^media/(?P<path>.*)$', 'django.views.static.serve', {
'document_root': settings.MEDIA_ROOT,
}),
)