Files
santeh-ray/templates/catalog/index.html
Azimkin 27187c5e53
All checks were successful
Build and Push Docker Image / build (push) Successful in 30s
feat: add subcategory support for catalog and admin
- Introduced `Subcategory` model with migration and unique slug constraint per category
- Enabled subcategory assignment for items with validation to ensure category matching
- Updated catalog views to handle subcategories, filtering items accordingly
- Enhanced templates (`index.html`, `side-bar.html`, `item-list.html`, `detail.html`) to display subcategories
- Added dynamic subcategory dropdown in Django admin with category filtering
- Created JavaScript for admin subcategory handling and AJAX population
- Wrote comprehensive tests for subcategory functionality in views and admin
2026-04-26 22:53:45 +02:00

34 lines
1.6 KiB
HTML

{% extends "_layouts/base.html" %}
{% load static %}
{% block title %}Каталог{% endblock %}
{% block add_css %}
<link rel="stylesheet" href="{% static "css/catalog.css" %}">
{% endblock %}
{% block content %}
<!-- HEADER -->
{% include "_fragments/header.html" with active="catalog" %}
{% if selected_category.id == None %}
{% include '_fragments/breadcrumbs.html' with url_1='/' text_1='Главная' url_2='/catalog/' text_2='Каталог' %}
{% elif selected_subcategory.id != None %}
{% with category_url='/catalog/'|add:selected_category.id|add:'/' subcategory_url='/catalog/'|add:selected_category.id|add:'/?subcategory='|add:selected_subcategory.id %}
{% include '_fragments/breadcrumbs.html' with url_1='/' text_1='Главная' url_2='/catalog/' text_2='Каталог' url_3=category_url text_3=selected_category.name url_4=subcategory_url text_4=selected_subcategory.name %}
{% endwith %}
{% else %}
{% with category_url='/catalog/'|add:selected_category.id|add:'/' %}
{% include '_fragments/breadcrumbs.html' with url_1='/' text_1='Главная' url_2='/catalog/' text_2='Каталог' url_3=category_url text_3=selected_category.name %}
{% endwith %}
{% endif %}
<div class="container catalog-container">
{% include 'catalog/_fragments/side-bar.html' with categories=categories subcategories=subcategories selected_category=selected_category selected_subcategory=selected_subcategory %}
{% include 'catalog/_fragments/item-list.html' with items=items %}
</div>
{% include "_fragments/footer.html" %}
{% endblock %}