Изображение в блоке StreamField не распознается
Эта ошибка показана:
Тег 'image' должен иметь вид {% image self.photo max-320x200 [ custom-attr="value" ... ] %} или {% image self.photo max-320x200 как img%}
со строкой 19 {% image block.value as mein_bild %}
Мой шаблон:
{% extends "base.html" %}
{% load static wagtailcore_tags wagtailimages_tags %}
{% block content %}
<div class="notiert">
<header>
<h1>{{ page.title }}</h1>
</header>
<div class="body">
{{ page.kurzfassung|richtext }}
<p>{{ page.first_published_at }}</p>
{% for block in self.notiert_feld %}
{% if block.block_type == 'image' %}
<p>in if image {{ block.value }}</p>
{% image block.value as mein_bild %}
<img {{ mein_bild }} width=530 >
{% else %}
{{ block.value }}
{% endif %}
{% endfor %}
</div>
</div>
{% endblock%}
Строка 18 я использовал для отладки. Если я удаляю строки 19 и 20, отображается имя изображения.
2 ответа
Я думал, что попробовал этот вариант и получил ошибку. Но сейчас это работает.
{% extends "base.html" %}
{% load static wagtailcore_tags wagtailimages_tags %}
{% block content %}
<div class="notiert">
<header>
<h1>{{ page.title }}</h1>
</header>
<div class="body">
{{ page.kurzfassung|richtext }}
<p>{{ page.first_published_at }}</p>
{% for block in self.notiert_feld %}
{% if block.block_type == 'image' %}
{% image block.value width-530 %}
{% else %}
{{ block.value }}
{% endif %}
{% endfor %}
</div>
</div>
{% endblock %}
Спасибо за Ваш ответ!
Как описано на https://docs.wagtail.io/en/stable/topics/images.html, вам необходимо включить правило изменения размера, чтобы указать размер, при котором изображение должно отображаться. Если вы не хотите изменять размер изображения, используйте original
(хотя имейте в виду, что это может нарушить макет вашей страницы и / или потерять пропускную способность, если редактор загружает увеличенное изображение):
{% image block.value original as mein_bild %}