Django - 可以在静态文件夹中显示 ImageField 对象吗?

Posted

技术标签:

【中文标题】Django - 可以在静态文件夹中显示 ImageField 对象吗?【英文标题】:Django - possible to display ImageField objects in static folder? 【发布时间】:2014-03-28 13:28:22 【问题描述】:

这是我的 settings.py:

STATIC_URL = '/static/'

# Additional locations of static files
 STATICFILES_DIRS = (
    '/home/userName/project/app/static',
)

假设我的视图将 ImageField 对象传递给模板。因此,如文档中所述:

https://docs.djangoproject.com/en/1.5/ref/models/fields/#django.db.models.fields.files.FieldFile.url

我可以通过这样做访问图像的 URL

  FieldFile.url 

在我的模板中。如果我尝试访问图像的 URL,它可以工作,但是,我也需要能够加载静态。我想做这样的事情:

% load staticfiles %

<img src="% static " FieldFile.url " %"  />

但是,这不起作用。假设 FieldFile.url 是

images/imageName.jpg

当我这样做时

<img src="% static "images/imageName.jpg" %"  />

可以,但是我用的时候就不行了

 FieldFile.url 

不知为何,怎么会?

注意:当我尝试做时

% load staticfiles %

<img src="% static " FieldFile.url " %"  />

并使用谷歌浏览器“检查元素”,它显示了这一点

<img src="/static/%7B%7B%20FieldFile.url%20%7D%7D"  />

【问题讨论】:

【参考方案1】:

不是必需的,因为您已经在模板标签中:

<img src="% static FieldFile.url %"  />

【讨论】:

以上是关于Django - 可以在静态文件夹中显示 ImageField 对象吗?的主要内容,如果未能解决你的问题,请参考以下文章

Django静态图像不显示

django之模板显示静态文件

django 和 vue.js 生产错误:在 django 中运行 npm build 和链接静态文件后没有显示

Django2.2 静态文件的上传显示,遇到的坑点-------已解决

Django显示静态文件夹之外的图像/视频

django1.8中如何显示图片