我使用了Imagefield的自定义动态路径。我的图片已完美上传到所需的文件夹中。但是图像没有显示在我的模板中。模板找到了带有//的图像路径,但是无法显示图像。如何解决?
这是我的settings.py
MEDIA_ROOT = '/home/faisal/workspace/pandora/media/'
MEDIA_URL = '/media/'
STATIC_ROOT = ''
STATIC_URL = '/static/'
STATICFILES_DIRS = (
'/home/faisal/workspace/pandora/Static/' ,
)
这是我的urls.py
urlpatterns = patterns('',
url(r'^admin/', include(admin.site.urls)),
url(r'^async/gallery/',include('gallery.urls')),
url(r'^media/(?P<path>.*)$', 'django.views.static.serve',{'document_root': '/home/faisal/workspace/pandora/media',}),
)
这是我的模板标签
<img src="{{ MEDIA_URL }}{{ image.photo.url }}" alt="{{ image.title }}" />
这是我的views.py:
return render_to_response('gallery/image.html',
{
'e_piclist' : e_piclist,
},context_instance=RequestContext(request))
在我的模板中,而不是显示图像,这显示图像alt。
我做错了什么?
答案 0 :(得分:1)
您的图片代码无需{{MEDIA_ROOT}}
,请将代码更新为
<img src="{{ image.photo.url }}" alt="{{ image.title }}" />
image_field.url
提供绝对路径。请参阅File field storage