Мне нужно написать оператор if для добавления изображения рядом с тегом h1 в неупорядоченный список, если изображение существует

Прилагается шаблон трясогузки, который я написал до сих пор.

{% load wagtailimages_tags %}

<section class = "container">
    <h2 class = "text-center">{{ self.title }}</h2>
    <div class = "general-alumnae-deck">
        {% for member in self.general_member_cards %}
            {% if member.photo %}

            {% endif %}
        {% endfor %}
    </div>
</section>

В конечном итоге я хочу, чтобы код выглядел так:

<h2>Avatar Images</h2>

<ul>
    <li><img src = "img_avatar.png" alt = "Avatar" class = "avatar"> <h3> Bleu </h3></li>
    <li><img src = "img_avatar2.png" alt = "Avatar" class = "avatar"> <h3> Red </h3></li>
</ul>

</body>
</html>

с изображением, всплывающим рядом с тегом «h3», если существует фотография, конечно, изображение будет {{}} заключено в двойные скобки для динамического шаблона.

На какой вопрос вы пытаетесь получить ответ?

nimasmi 03.02.2023 17:08

Как мне сделать это, если у меня нет изображения, то ничего не появляется, но если у меня есть изображение, оно появляется рядом с тегом h?

Juan Monster 03.02.2023 17:26

В вашем «шаблоне на данный момент» и «как я хочу, чтобы код выглядел» используется совершенно разная HTML-разметка, поэтому мы не можем знать, с каким именно битом у вас возникла проблема.

gasman 03.02.2023 17:41
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Введение в CSS
Введение в CSS
CSS является неотъемлемой частью трех основных составляющих front-end веб-разработки.
Как выровнять Div по центру?
Как выровнять Div по центру?
Чтобы выровнять элемент <div>по горизонтали и вертикали с помощью CSS, можно использовать комбинацию свойств и значений CSS. Вот несколько методов,...
Навигация по приложениям React: Исчерпывающее руководство по React Router
Навигация по приложениям React: Исчерпывающее руководство по React Router
React Router стала незаменимой библиотекой для создания одностраничных приложений с навигацией в React. В этой статье блога мы подробно рассмотрим...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
Toor - Ангулярный шаблон для бронирования путешествий
Toor - Ангулярный шаблон для бронирования путешествий
Toor - Travel Booking Angular Template один из лучших Travel & Tour booking template in the world. 30+ валидированных HTML5 страниц, которые помогут...
0
3
54
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

У вас это более-менее уже есть...

<section class = "container">
    <h2 class = "text-center">{{ self.title }}</h2>
    <div class = "general-alumnae-deck">
        <ul>
        {% for member in self.general_member_cards %}
            <li>
            {% if member.photo %}
                {% image member.photo fill-50x50 as avatar %}
                <img src = "{{ avatar.url }} class='avatar">&nbsp;
            {% endif %}
            <h3 style = "display:inline;">{{ member.name }}</h3>
            </li>
        {% endfor %}
        </ul>
    </div>
</section>

Вы сказали, что вам нужно изображение рядом с <h3>, поэтому вам нужно переопределить свойство display:block тега h3 и сделать его встроенным, как указано выше (или создать для этого класс css).

Обновлено: Обновлено, чтобы использовать тег шаблона изображения трясогузки, чтобы получить представление фотографии участника.

Ответ принят как подходящий

Неясно, взято ли изображение из библиотеки изображений трясогузки, но если это так, вы должны использовать тег {% image %}. Смотрите https://docs.wagtail.org/en/stable/topics/images.html#

{% with self.general_member_cards as cards %}
{% if cards %}
    <ul>
        {% for member in cards %}
            <li>
                {% if member.photo %}
                    {% image member.photo fill-80x80 %}
                {% endif %}
                <h3>{{ member.name }}</h3>
            </li>
        {% endfor %}
    <ul>
{% endif %}

Я также использовал тег {% with %} для кэширования self.general_member_cards в шаблоне на случай, если для этого потребуется запрос к базе данных. Если это не так, вы можете пропустить этот шаг.

Другие вопросы по теме