1

сгенерировать следующую таблицу, используя django_table2Как удалить нижнюю пулю из Джанго таблицы

Semester Actual Prediction 
Spring 2014  209  199 

    *1 coe 

семестра, фактический и предсказаниями являются именами столбцов. Моя таблица именно то, как она мне нужна. Однако в нижней части каждой таблицы у меня всегда есть количество элементов в моей модели. Я не хочу эту пулю. Я знаю его значение по умолчанию в django_table2. Есть ли способ удалить это? Ниже еще один пример:

Department Semester  Actual Prediction 
MIE   2014 Spring  202  210 
MIE   2015 Fall  213  200 
MIE   2015 Spring  11  12 

*3 departments 
+0

Можете ли вы не просто скрыть это через css? – karthikr

+0

Думаю, я могу. но это заголовок? – user3550366

+0

У меня нет подсказки. Вам нужно будет проверить элемент – karthikr

ответ

0

Самый простой способ сделать это (для меня) это путем создания этого пути (your_templates_dir /django_tables2/tables.html) на директорию шаблонов со следующим содержимым:

{% spaceless %} 
{% load django_tables2 %} 
{% load i18n %} 
{% if table.page %} 
<div class="table-container"> 
{% endif %} 
{% block table %} 
<table{% if table.attrs %} {{ table.attrs.as_html }}{% endif %}> 
    {% nospaceless %} 
    {% block table.thead %} 
    <thead> 
     <tr> 
     {% for column in table.columns %} 
      {% if column.orderable %} 
      <th {{ column.attrs.th.as_html }}><a href="{% querystring table.prefixed_order_by_field=column.order_by_alias.next %}">{{ column.header }}</a></th> 
      {% else %} 
      <th {{ column.attrs.th.as_html }}>{{ column.header }}</th> 
      {% endif %} 
     {% endfor %} 
     </tr> 
    </thead> 
    {% endblock table.thead %} 
    {% block table.tbody %} 
    <tbody> 
     {% for row in table.page.object_list|default:table.rows %} {# support pagination #} 
     {% block table.tbody.row %} 
     <tr class="{{ forloop.counter|divisibleby:2|yesno:"even,odd" }}"> {# avoid cycle for Django 1.2-1.6 compatibility #} 
      {% for column, cell in row.items %} 
       <td {{ column.attrs.td.as_html }}>{% if column.localize == None %}{{ cell }}{% else %}{% if column.localize %}{{ cell|localize }}{% else %}{{ cell|unlocalize }}{% endif %}{% endif %}</td> 
      {% endfor %} 
     </tr> 
     {% endblock table.tbody.row %} 
     {% empty %} 
     {% if table.empty_text %} 
     {% block table.tbody.empty_text %} 
     <tr><td colspan="{{ table.columns|length }}">{{ table.empty_text }}</td></tr> 
     {% endblock table.tbody.empty_text %} 
     {% endif %} 
     {% endfor %} 
    </tbody> 
    {% endblock table.tbody %} 
    {% block table.tfoot %} 
    <tfoot></tfoot> 
    {% endblock table.tfoot %} 
    {% endnospaceless %} 
</table> 
{% endblock table %} 

{% if table.page %} 
{% with table.page.paginator.count as total %} 
{% with table.page.object_list|length as count %} 
{% block pagination %} 
<ul class="pagination"> 
    {% if table.page.has_previous %} 
    {% nospaceless %}{% block pagination.previous %}<li class="previous"><a href="{% querystring table.prefixed_page_field=table.page.previous_page_number %}">{% trans "Previous" %}</a></li>{% endblock pagination.previous %}{% endnospaceless %} 
    {% endif %} 

    {% if table.page.has_previous or table.page.has_next %} 
    {% nospaceless %}{% block pagination.current %}<li class="current">{% blocktrans with table.page.number as current and table.paginator.num_pages as total %}Page {{ current }} of {{ total }}{% endblocktrans %}</li>{% endblock pagination.current %}{% endnospaceless %} 
    {% endif %} 

    {% if table.page.has_next %} 
    {% nospaceless %}{% block pagination.next %}<li class="next"><a href="{% querystring table.prefixed_page_field=table.page.next_page_number %}">{% trans "Next" %}</a></li>{% endblock pagination.next %}{% endnospaceless %} 
    {% endif %} 
</ul> 
{% endblock pagination %} 
{% endwith %} 
{% endwith %} 
</div> 
{% endif %} 
{% endspaceless %} 

Этот подход отменяет все таблицы, созданные с помощью тега шаблона django_table2, и не будет необходимости работать с предстоящими версиями django_table2, но я буду в порядке, если вы хотите сохранить определенную версию (в моем случае 0.15. 0).

Другой подход, который является более масштабируемым, должен работать с будущими версиями (и, я рекомендую), путем подклассификации таблицы, как описано в django-tables2 documentation.

Смежные вопросы