Я работаю над своей навигацией для проекта django и не могу понять это.У меня есть контекст, возвращаемый из одного ListView
класса, но я хочу упорядочить возвращенный набор запросов по категориям.
Если у меня несколько категорий в одной модели, как я могу разделить возвращенные объекты представлениячтобы отобразить их отдельно на странице?
Я пытался использовать это в views.py :
class ServiceView(ListView):
model = Service
template_name = "services/services.html"
def get_context_data(self, **kwargs):
context = super().get_context_data(**kwargs)
context['health'] = Service.objects.all().filter(service_type__icontains='health')
context['life'] = Service.objects.all().filter(service_type__icontains='life')
return context
У меня сложилось впечатление, что я могу назвать измененныйконтексты из шаблона, но я мог бы назвать только один контекст.Можно ли создать несколько контекстов из одной модели?
Я пытался использовать шаблон, подобный следующему services.html :
<ul class="sidebar-nav animated fadeIn">
<li>
<a data-toggle="collapse" href="#coll-css" class="collapsed"><i class="fa fa-heart"></i> Health</a>
<ul id="coll-css" class="menu-submenu list-unstyled collapse">
{% for service in health %}
<li><a href="{% url 'services' %}{{ service.slug }}"><i class="fa {{ service.icon }}"></i>{{ service.title }}</a></li>
{% endfor %}
</ul>
<a data-toggle="collapse" href="#coll-css" class="collapsed"><i class="fa fa-heart"></i> Life</a>
<ul id="coll-css" class="menu-submenu list-unstyled collapse">
{% for service in life %}
<li><a href="{% url 'services' %}{{ service.slug }}"><i class="fa {{ service.icon }}"></i>{{ service.title }}</a></li>
{% endfor %}
</ul>
</li>
</ul>
Элементы вконтекст «здоровья» населяет, а не контекст жизни.Можно ли использовать 2 для циклов в шаблоне?Есть ли лучший способ добиться этого?