2012-12-01 82 views
0

我試圖在我的Django模板中顯示一個ImageField圖像。顯示在Django模板中的ImageField中保存的圖像

我做它是這樣:

<img src="{{ pic.content.url }}" />

然而,這顯示了mysite.com/appname/appname/picturename.ext的圖像。 (我認爲90%肯定是錯誤的,但我不知道什麼是正確的,圖像保存在更大的django站點文件夾中,我不知道Apache是​​否可以通過url直接提供服務)

我的網站settings.py文件具有正確的媒體目錄(它使用管理頁面和所有爵士樂上傳),但這僅僅是不起作用。

如何顯示圖像?

回答

0

我假設你已經完成了所需的MEDIA設置。請確保您從您的視圖傳遞RequestContext的,試着改變你的src到

<img src="{{MEDIA_URL}}{{pic.content.url}}" /> 

更新:

我認爲你需要改變你的媒體設置:

MEDIA_ROOT =「/無功/網絡/ mysite/media /'#這需要指向媒體文件夾 MEDIA_URL ='/ media /'

+0

我也試過了。我很確定那是它加倍了,並給了我一個源代碼網站/appname/appname/picturename.ext的圖片。 我目前的結構如下: 網站 媒體 APPNAME APPNAME models.py,模板等 媒體URL指向「媒體」文件夾下還有,它的保存在媒體/應用程序的名字。但是,該網址將其作爲相對地址。換句話說,它沒有看media/appname,而是看appname/appname,因爲它認爲它是從appname開始的,而不是從媒體開始。 –

+0

如果我確切知道我應該如何處理MEDIA_ROOT和MEDIA_URL,可能會更好。實際上,我有MEDIA_ROOT ='/ var/www/mysite /'和MEDIA_URL ='media /' –

+0

提供了我的回答更新 –

相關問題