Django Сбой валидации с Bootstrap сортируемой табелью - PullRequest
0 голосов
/ 04 февраля 2020

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

Вот моя таблица, которая работает:

<form method="post">
  {% csrf_token %}
    <table>
      <thead>
        <tr>
          <th>Col 1</th>
          <th>Col 2</th>
          <th>Col 3</th>
          <th>Col 4</th>
          <th>Col 5</th>
          <th>Col 6</th>
        </tr>
        </thead>
        <tbody>
          {% for s in s_list %}
            {{ s.formset.management_form }}
              <tr>
                <td>{{ s.form1 }}</td>
                <td>{{ s.form2 }}</td>
                <td>{{ s.form3 }}</td>
                <td>{{ s.form4 }}</td>
                <td>{{ s.form5 }}</td>
              </tr>
          {% endfor %}
        </tbody>
      </table>
  <input type="submit" value="Save">
</form>

Я тогда хотел сделать таблица сортируется с помощью Bootstrap, и я нашел что-то вроде этого:

<form method="post">
  {% csrf_token %}
    <table data-toggle="table"> <!-- Add BS to the table -->
      <thead>
        <tr>
          <th  data-sortable="true">Col 1</th> <!-- Make this column sort-able -->
          <th  data-sortable="true">Col 2</th> <!-- Make this column sort-able -->
          <th  data-sortable="true">Col 3</th> <!-- Make this column sort-able -->
          <th>Col 4</th>
          <th>Col 5</th>
          <th>Col 6</th>
        </tr>
        </thead>
        <tbody>
          {% for s in s_list %}
            {{ s.formset.management_form }}
              <tr>
                <td>{{ s.form1 }}</td>
                <td>{{ s.form2 }}</td>
                <td>{{ s.form3 }}</td>
                <td>{{ s.form4 }}</td>
                <td>{{ s.form5 }}</td>
              </tr>
          {% endfor %}
        </tbody>
      </table>
  <input type="submit" value="Save">
</form>

Теперь, когда я отправляю данные, я получаю сообщение об ошибке:

ManagementForm data is missing or has been tampered with

Я ничего не изменил в view.py или form.py. Если честно, я на самом деле не знаю, что делает Bootstrap, но может ли это несколько изменить ID входов?

То, что я ищу, - это решение, которое позволяет мне смягчить мой стол нажав на заголовок в этой строке, не создавая ошибки.

РЕДАКТИРОВАТЬ:

еще несколько испытаний показали, что:

<table data-toggle="table"> <!-- Add BS to the table -->

один создает ошибка.

...