【发布时间】:2017-01-17 04:23:51
【问题描述】:
我有下一个查询集:
fotosinfo=IndexHasFotografia.objects.filter(index_idindex=infoindex,ubicacion_fotografiaindex=1).values('fotografia_idfotografia__pk','fotografia_idfotografia__ruta_fotografia','fotografia_idfotografia__nombre_fotografia')
fotografia_idfotografia__ruta_fotografia 存储图像 URL 的位置,但存储的路由类似于 ./image.jpg,它必须是 /files/image.jpg。在模板中,我可以在模板标签之前添加/files,但我不能删除斜线之前的点。我无法更改存储图像的方式,因为我存储了很多图像。我使用 json 显示其他图像,这更容易,但现在我必须使用模板标签。那么,如何删除该点以在模板标签中显示图像 URL?
我尝试使用切片过滤器作为这个问题的答案:Remove first character from string Django template 但现在字符串消失了。
我的html里面有一个模板标签,看起来像这样:
<img src="{{ fotosslide.first.fotografia_idfotografia__ruta_fotografia.name|slice:'1:' }}">
【问题讨论】:
-
为什么不搜索您的数据库并找到所有以
./开头的实例并将其替换为/files/? -
你不是只是想添加一个静态/媒体文件 URL 吗?
/files/是你的MEDIA_URL/STATIC_URL? -
@allcaps 这将是一个很好的解决方案 :D 我已经找到了解决方法,这是我对切片过滤器的坏处。
-
@vmonteco /files/ 是我的媒体 URL,我现在有一种方法可以在模板中附加 MEDIA_URL 变量,但是,它适用于部署还是仅适用于开发?
-
DEV、TST、ACC、PRD,都将
/files/作为媒体 url,但 Django 仅使用开发服务器(正确的配置和 DEBUG=True)提供此目录。在其他情况下,您需要将服务器配置为为您服务/files/。
标签: django