2012-02-22 34 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