Как заполнить таблицу после нажатия кнопки в шаблоне django? - PullRequest
0 голосов
/ 09 марта 2020

1) Я хочу вставить значения в поле ввода из словаря, используя DTL. Вот фрагмент кода, который на странице загрузки делает невидимым этот кодовый тег в таблице (возможно, из-за того, что условие становится ложным), но сразу после отправки данных из словаря, показывая вставленное значение в том же теге.

Как я могу заставить его работать и оставить все теги td видимыми и при загрузке страницы?

2) Кроме того, поскольку мои data.items имеют 6 ключей, так что его итерация 6 раз, я просто хочу получить один время.

Я знаю, что не очень ясно, но извините, я не могу опубликовать весь код, так как он слишком большой и конфиденциальный. Пожалуйста, помогите, я совершенно новый в django. Спасибо.

....
...
..
      {% for key, value in data.items %}
      {% for key2,value2 in value.items %}
      <tr class="info">
        <td>1</td>

        <td>Cholesterol -HDL</td>
        <td>
        {% if value2.test_name == "Cholesterol -HDL" %}
        <div class="form-group">
          <input type="text" class="form-control" name="cholesterol_hdl_result" value="{{ value2.results }}">
        </div>
      </td>
        <td><div class="form-group">
          <input type="text" class="form-control" name="cholesterol_hdl_uom" value="{{ value2.units }}">
        </div></td>
        <td><div class="form-group">
          <input type="text" class="form-control" value="40.00" name="cholesterol_hdl_lr">
        </div></td>
        <td><div class="form-group">
          <input type="text" class="form-control" value="60.00" name="cholesterol_hdl_hr">
        </div></td>
        {% endif %}
      </tr>
        {% endfor %}

{% endfor %}
..
...
....

1 Ответ

1 голос
/ 09 марта 2020

Итак, когда словарь пуст, вы должны проверить это в if и else условии и записать этот тег <td> в блоке else, как показано ниже ...

{% if data %}

    ......
    ......
    {% for key, value in data.items %}
          {% for key2,value2 in value.items %}
              ....
              ....

          {% endfor %}
    {% endfor %}

{% else %}

    # write your default <td> tag here which is shown when there is empty data dictionary

{% endif %}

И для итерация для l oop только после того, как вам понадобится шаблон forloop.first из django, как показано ниже ...

{% for key, value in data.items %}
    {% if forloop.first %}
        {% for key2,value2 in value.items %}
            ....
            ....

        {% endfor %}
    {% endif %}  
{% endfor %}
...