2012-08-02 78 views
0

我想用Django創建一個站點,但是,我無法獲取要顯示的圖像。Django不顯示圖像

我的模式是:

class Place(models.Model): 
Pic=models.ImageField(upload_to="media",blank=True,null=True) 
StoreName=models.CharField(max_length=200) 
Address=models.CharField(max_length=200) 
OpenDate=models.DateField('date opened') 
SubmitDate=models.DateTimeField('date submitted') 
def __unicode__(self): 
    return self.StoreName 

和觀點是:

def PlaceView(request,thisPlace): 
PlaceObject=Place.objects.get(StoreName=thisPlace) 
return render_to_response('Pages/place.html',{'PlaceObj':PlaceObject}) 

然後在 「place.html」

<img src="{{PlaceObj.Pic.url}}" alt="test" width="50px" height="50px" 

但畫面永遠diplayed。在控制檯我得到一個404錯誤:

[02/Aug/2012 14:49:50] "GET /Media/media/24228302_1.jpg HTTP/1.1" 404 2220 

我已在MEDIA_ROOT設置爲一個文件夾(/家/ Project_root /媒體/)在我的系統和MEDIA_URL =的「http://127.0.0.1:8000/Media /'

有沒有我不擅長的事情?

回答

2

您必須在urls.py(或您的網址格式所在的任何位置)爲服務媒體圖片設置網址格式。像這樣:

url(r'^media/(?P<path>.*)$', 'django.views.static.serve', { 
     'document_root': settings.MEDIA_ROOT, 
    }), 

確保在您的urls.py文件中包含from django.conf import settings