Генерация представлений в Python
Рендеренные версии исходных изображений, сгенерированные тегом шаблона Wagtail {% image %}, называются «представлениями» и хранятся в виде новых файлов изображений в каталоге сайта [media]/images при первом вызове.
Изображение представлений также можно генерировать динамически из Python с помощью метода get_rendition(), например:
newimage = myimage.get_rendition('fill-300x150|jpegquality-60')
Если у myimage было имя файла foo.jpg, новое представление файла изображения под названием foo.fill-300x150.jpegquality-60.jpg будет сгенерировано и сохранено в каталоге сайта [media]/images. Параметры аргументов идентичны спецификации фильтра тега шаблона {% image %}, и должны быть разделены |.
Сгенерированный объект Rendition будет иметь свойства, специфичные для этой версии изображения, такие как url, width и height, поэтому что-то вроде этого можно использовать в генераторе API, например:
url = myimage.get_rendition('fill-300x186|jpegquality-60').url
Свойства, относящиеся к исходному изображению, из которого было создано сгенерированное представление, например title, можно получить через свойство представления image:
>>> newimage.image.title 'Blue Sky' >>> newimage.image.is_landscape() True
См. также: Как использовать изображения в шаблонах
© 2014-present Torchbox Ltd and individual contributors.
All rights are reserved.
Licensed under the BSD License.
https://docs.wagtail.org/en/v2.16.3/advanced_topics/images/renditions.html