【发布时间】:2015-08-22 09:43:24
【问题描述】:
Settings.py
STATIC_URL = '/static/'
MEDIA_ROOT='/home/akanksha/bookepdia/media/'
MEDIA_URL = '/media/'
TEMPLATE_DIRS = ('/home/akanksha/bookepdia/templates',)
模型.py
class Image(models.Model):
title = models.CharField(max_length=255)
photo = models.ImageField(upload_to='/home/akanksha/bookepdia/media/images/')
网址.py
urlpatterns = patterns('',
url(r'^$', 'bookepdia.views.home', name='home'),
) + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
Views.py
def home(request):
photos = Image.objects.all()
return render_to_response('display.html', {'photos' : photos})
display.html
<html>
<h3>Images of books</h3>
<img src="/media/images/image_name" />
{% for p in photos %}
<img src="{{p.photo.url}}" />
{% endfor %}
</html>
现在,我的问题是当我添加 /media/images/image_name 时,图像会显示,但是当我使用 {{p.photo.url}} 时,图像会显示为损坏的图标。 我发现它的路径为/home/akanksha/bookepdia/media/images/image_name。 现在,我想为每个 url 编辑它,以便它作为 /media/images/image_name 工作。
【问题讨论】:
-
在生成的 display.html 中,您看到什么代替了
{{p.photo.url}}?是/home/akanksha/bookepdia/media/images/<something>吗? -
是的,这正是我所看到的