Я создал таблицу с 3 столбцами.

  • Первый столбец - это основное название теста.
  • Второй столбец - это имя под-теста.
  • Третий столбец - это статус «прошел / не прошел».

Я хотел бы удалить дубликаты в столбце, чтобы подтест и статус могли выглядеть так, как будто они сгруппированы с основным тестом.

Я пытался использовать уникальный фильтр в HTML ниже <td>{{ value['status'][0][0]|unique }}</td>, но безуспешно.

В основном пытаюсь удалить дубликаты из столбца 1 моей таблицы.

<table style="width: 100%" class="flex-container">
    <tbody>
        {% for key, value in testCaseStatusDict.items() %}
            <tr>
                <td>{{ value['status'][0][0] }}</td>

                <td style="text-align: left; vertical-align: middle"><b>{{ value['testCaseName']}}</b></td>

                {% for status in value['status']%}
                    {% if status[2] == 'FAIL' %}
                        <td style="background-color: red; text-align: center"><br>{{ status[2] }} <br> {{ status[3] }}</td>
                    {% else %}
                        <td style="background-color: green; text-align: center"><br>{{ status[2] }} <br> {{ status[3] }}</td>
                    {% endif %}
                {% endfor %}
            </tr>
        {% endfor %}
    </tbody>
</table>

Желаемый вид:

Desired look

Фактический вывод:

Actual output

0
Van Hour 19 Дек 2019 в 01:38

1 ответ

Вы можете попробовать это: Проверьте, находитесь ли вы уже в фактическом тестовом примере, если да, не печатайте статус снова, иначе напечатайте его.

{% set status_before = [] %}    
{% for key, value in testCaseStatusDict.items() %}
    <tr>    
        {% if value['status'][0][0] in status_before %}
            <td></td>
        {% else %}
            <td>{{ value['status'][0][0] }}</td>
            {% set __ = status_before.append(value['status'][0][0]) %}
        {% endif %}
    ...

@ Редакция Попробуй это с изменяемым списком, даже если это некрасиво. Похоже, что обновление переменной внутри цикла не поддерживается: https://github.com/pallets/jinja/issues/641

0
Boendal 19 Дек 2019 в 15:33