Я не могу отображать изображения с вигтейл - PullRequest
0 голосов
/ 12 февраля 2019

Я пытаюсь использовать изображения вставки с wagtail cms, но обвиняю в следующей ошибке: у объекта 'QuerySet' нет атрибута 'get_rendition'

Я прочитал документацию, но там они используют для отображения несколькихизображения, но я хочу показать только одну

модели:

class HomePage(Page):
    body = RichTextField(blank=True)

    content_panels = Page.content_panels + [
        FieldPanel('body', classname="full"),
        InlinePanel('gallery_images', label="Gallery images"),
    ]

class BlogPageGalleryImage(Orderable):
    page = ParentalKey(HomePage, on_delete=models.CASCADE, related_name='gallery_images')
    image = models.ForeignKey(
        'wagtailimages.Image',
        on_delete=models.CASCADE, 
        related_name='+',
    )
    caption = models.CharField(blank=True, max_length=250)

    panels = [
        ImageChooserPanel('image'),
        FieldPanel('caption'),
    ]

base.html:

{% load wagtailcore_tags wagtailimages_tags %}
{% image page.gallery_images.all width-400 as my_image %}

Я хотел вставить только одно изображение динамически, это возможно

1 Ответ

0 голосов
/ 12 февраля 2019

Неа.Вы не можете сделать это.page.gallery_images.all - это набор запросов.Вы должны поместить это в цикл for и пройти через page.gallery_images.all с {% for i в page.gallery_images.all%}, а затем для рендеринга только одного вы можете использовать {% if forloop.first%}.Или вы можете использовать фильтр среза.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...