朋友们,
我正在使用 Django 1.6,上周(!)一直在尝试在通过 Django 管理站点上传的网页上显示照片。
我知道这是一个常见的问题。我已经尝试阅读文档,像这个和这个这样的许多 SO 问题都没有成功。
通过管理站点上传图像后,我可以看到图像存在于以下文件夹中:
/home/ian/django/mysite/cars/media/images/1.JPG
但是,当页面加载(或通过管理站点上传图片后尝试查看图片)时,我看到 404 错误。图片来源显示如下:
<li><img src="/media/images/1.JPG" height="420"/></li>
model.py具有以下字段:
photo = models.ImageField(upload_to='images/')
urls.py添加了以下内容:
urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
模板是:
{% extends "base.html" %}
<h1>Here</h1>
<p>{{ collectiondetail.title }}</p>
{% for photo in photos %}
<li><img src="{{ photo.photo.url }}" height="420"/></li>
{% endfor %}
{% endblock %}
最后settings.py是:
STATIC_ROOT = '/home/ian/django/mysite/cars/static/'
STATIC_URL = '/static/'
MEDIA_ROOT = '/home/ian/django/mysite/cars/media/'
MEDIA_URL = '/media/'
我错过了什么?