Django, Как фильтровать контекстный вывод из HTML шаблона?

У меня есть ListView, который отправляет контекст как news в шаблоне HTML.

Нижеприведенный код должен разрезать контекстный массив с 4-го элемента и до его конца

{% for post in news[4:0] %}
............
{% endfor %}

Но возникает следующая ошибка

Не удалось разобрать остаток: '[4:]' из 'news[4:]'

Вы можете сделать это внутри ListView, переопределив данные контекста следующим образом:

def get_context_data(self, **kwargs):
    context = super().get_context_data(**kwargs)
    context['last_4_news_items'] = News.objects.all().order_by('-date')[:4]
    return context

template:

{% for news in last_4_news_items %}
    {{ news }}
{% endfor %}

Вы можете использовать тег шаблона slice:

{% for post in news|slice:"4:" %}
............
{% endfor %}
Вернуться на верх