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 %}