Представление таблицы django в HTML с отображением пользовательского подмножества столбцов

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

from utils import potential_col_list

def display_table(request):
    cols_to_display = []
    model_filter = ModelFilter(request.GET)
    query_set = model_filter.qs.values(*potential_col_list)
    for key, value in request.GET.items(): 
        if key in potential_col_list:
            cols_to_display.append(key)
    return render(request, 
                 'project/display_table.html', 
                 {'queryset': query_set, 'cols_to_display': cols_to_display})

Я хочу, чтобы отображался набор запросов, но только те столбцы, которые пользователь указал в запросе get, использованные в фильтре. Шаблон display_table.html выглядит следующим образом.

<table>
  <thead>
    <tr>
    {% for col in cols_to_display %}
      <th> {{ col }} </th>
    {% endfor %}
    </tr>
  </thead>

  <tbody>
    {% for item in queryset %}
    <tr>
      {% for col in cols_to_display %}
        <td> {{ item.col }} </td>
      {% endfor %}
    </tr>
    {% endfor %}
  </tbody>
</table>

Заголовки таблицы отображаются правильно, но ни один из данных из набора queryset не отображается. Когда я пытаюсь отобразить все без cols_to_display, все отображается нормально.

Вернуться на верх