2012-02-22 35 views
4

在Django中,當您使用CDN提供媒體文件時,構建圖像URL的絕對路徑的最佳方式是什麼?在我的情況下,我有一個Movie對象的QuerySet,我想檢索電影的圖像屬性的絕對URL,其中圖像是一個ImageField。有沒有辦法通過使用模板標籤或QuerySet API的values()函數來實現這一點?如何從Django QuerySet獲取絕對圖像URL列表?

回答

6

我使用settings.py中的MEDIA_URL值爲模型字段的url加上前綴來解決此問題。您可以在模型上創建一個屬性,該屬性返回此連接的路徑作爲您想要的任何名稱。

例子:

@property 
def get_absolute_image_url(self): 
    return '%s%s' % (MEDIA_URL, self.image.url) 
+8

的'image.url'將已經有它的介質前綴,我相信。 – nhinkle 2014-01-05 08:10:41

+3

在2012年回答此問題時,圖片網址沒有添加媒體前綴。 – Brandon 2014-09-19 10:49:44