0

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を表示しました。

私は何が悪いのですか?

4

1 に答える 1

1

画像タグに必要はありません{{MEDIA_ROOT}}。タグを次のように更新してください

<img src="{{ image.photo.url }}" alt="{{ image.title }}" />

image_field.url絶対パスを提供します。ファイルフィールドストレージのポイント3を参照してください

于 2012-09-01T07:34:30.687 に答える