我遇到以下问题: 在我的models.py中,我正在使用像这样的Wagtail图像:
class ArtWork(models.Model):
image = models.ForeignKey(
'wagtailimages.Image',
on_delete=models.CASCADE,
related_name='+'
)
...
...
...
我知道我现在可以使用我的模板中的图像:
{% image artwork.image height-100 %}
但是对于我当前的项目,我需要在views.py中使用Image标签,因为我想用它生成一个Pdf。
简单地使用artwork.image
只返回图像的标题,但我需要这样的东西:
<img alt="SomeName" src="/media/images/SomeName_155x200.max-1200x1200_22b3pND.height-100.jpg" width="77" height="100">
同样artwork.image.url
没有结果。
如何在模板外使用Wagtail图像?
最好的问候
答案 0 :(得分:5)
如果您需要获取演绎(缩略图)的URL,您可以执行以下操作:
artwork_page_object.image.get_rendition('height-100').url
或访问节目文件:
artwork_page_object.image.get_rendition('height-100').file
您可以对height-100
模板标记使用任何有效的大小调整方法,而不是image
(请参阅the documentation for the image
标记)
如果您想访问原始图片,可以这样做:
artwork_page_object.image.file
有用的文档:
答案 1 :(得分:1)