🎨 fix: Единое меню навигации на всех страницах
- Убраны дубли пунктов меню (Умная рассылка отдельная удалена) - Структура: Пользователи / Коммуникации / Контент / Система - Все страницы наследуют base.html с одинаковым меню - Добавлены Настройки дайджеста в меню - Правило №3 добавлено в КРИТИЧЕСКИЕ-ПРАВИЛА.md Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
This commit is contained in:
parent
aaac93594d
commit
bd3a56ab3d
2 changed files with 52 additions and 30 deletions
|
|
@ -74,11 +74,17 @@
|
|||
<small class="text-white-50">Админ Панель v3.1</small>
|
||||
</div>
|
||||
<nav class="nav flex-column mt-3">
|
||||
<!-- ОСНОВНОЕ -->
|
||||
<a class="nav-link {% block nav_dashboard %}{% endblock %}" href="/">
|
||||
<i class="bi bi-speedometer2"></i> Дашборд
|
||||
</a>
|
||||
|
||||
<!-- ПОЛЬЗОВАТЕЛИ -->
|
||||
<div class="nav-item mt-3 px-3">
|
||||
<small class="text-white-50 text-uppercase" style="font-size: 0.7em; letter-spacing: 1px;">ПОЛЬЗОВАТЕЛИ</small>
|
||||
</div>
|
||||
<a class="nav-link {% block nav_users %}{% endblock %}" href="/users">
|
||||
<i class="bi bi-people"></i> Пользователи
|
||||
<i class="bi bi-people"></i> Все жильцы
|
||||
</a>
|
||||
<a class="nav-link {% block nav_verification %}{% endblock %}" href="/verification">
|
||||
<i class="bi bi-shield-check"></i> Верификация
|
||||
|
|
@ -86,55 +92,50 @@
|
|||
<span class="badge bg-danger">{{ pending_count }}</span>
|
||||
{% endif %}
|
||||
</a>
|
||||
|
||||
<!-- РАССЫЛКИ - ПОДМЕНЮ -->
|
||||
<a class="nav-link {% block nav_phones %}{% endblock %}" href="/phones">
|
||||
<i class="bi bi-telephone"></i> Телефоны
|
||||
</a>
|
||||
|
||||
<!-- КОММУНИКАЦИИ -->
|
||||
<div class="nav-item mt-3 px-3">
|
||||
<small class="text-white-50 text-uppercase" style="font-size: 0.7em; letter-spacing: 1px;">РАССЫЛКИ</small>
|
||||
<small class="text-white-50 text-uppercase" style="font-size: 0.7em; letter-spacing: 1px;">КОММУНИКАЦИИ</small>
|
||||
</div>
|
||||
<a class="nav-link {% block nav_broadcast %}{% endblock %}" href="/broadcast">
|
||||
<i class="bi bi-broadcast"></i> Обычная рассылка
|
||||
</a>
|
||||
<a class="nav-link {% block nav_smart_broadcast %}{% endblock %}" href="/broadcasts">
|
||||
<i class="bi bi-envelope-check"></i> Умная рассылка
|
||||
<span class="badge bg-success" style="font-size: 0.6em;">NEW</span>
|
||||
<i class="bi bi-broadcast"></i> Рассылки
|
||||
</a>
|
||||
<a class="nav-link {% block nav_scheduled_posts %}{% endblock %}" href="/scheduled_posts">
|
||||
<i class="bi bi-calendar2-plus"></i> Запланированные посты
|
||||
</a>
|
||||
|
||||
<!-- ДАЙДЖЕСТЫ -->
|
||||
<div class="nav-item mt-3 px-3">
|
||||
<small class="text-white-50 text-uppercase" style="font-size: 0.7em; letter-spacing: 1px;">ДАЙДЖЕСТЫ</small>
|
||||
</div>
|
||||
<a class="nav-link {% block nav_digests %}{% endblock %}" href="/digests">
|
||||
<i class="bi bi-newspaper"></i> Еженедельные дайджесты
|
||||
<span class="badge bg-success" style="font-size: 0.6em;">NEW</span>
|
||||
</a>
|
||||
<a class="nav-link {% block nav_digest_settings %}{% endblock %}" href="/digest_settings">
|
||||
<i class="bi bi-gear"></i> Настройки дайджеста
|
||||
</a>
|
||||
|
||||
<!-- ОСТАЛЬНОЕ МЕНЮ -->
|
||||
<div class="nav-item mt-3 px-3">
|
||||
<small class="text-white-50 text-uppercase" style="font-size: 0.7em; letter-spacing: 1px;">УПРАВЛЕНИЕ</small>
|
||||
</div>
|
||||
<a class="nav-link {% block nav_phones %}{% endblock %}" href="/phones">
|
||||
<i class="bi bi-telephone"></i> Телефоны
|
||||
</a>
|
||||
<a class="nav-link {% block nav_polls %}{% endblock %}" href="/polls">
|
||||
<i class="bi bi-bar-chart"></i> Опросы
|
||||
</a>
|
||||
<a class="nav-link {% block nav_events %}{% endblock %}" href="/events">
|
||||
<i class="bi bi-calendar-event"></i> События
|
||||
</a>
|
||||
<a class="nav-link {% block nav_schedules %}{% endblock %}" href="/schedules">
|
||||
<i class="bi bi-clock"></i> Расписания
|
||||
</a>
|
||||
<a class="nav-link {% block nav_ads %}{% endblock %}" href="/ads">
|
||||
<i class="bi bi-megaphone"></i> Объявления
|
||||
</a>
|
||||
|
||||
<!-- КОНТЕНТ -->
|
||||
<div class="nav-item mt-3 px-3">
|
||||
<small class="text-white-50 text-uppercase" style="font-size: 0.7em; letter-spacing: 1px;">КОНТЕНТ</small>
|
||||
</div>
|
||||
<a class="nav-link {% block nav_events %}{% endblock %}" href="/events">
|
||||
<i class="bi bi-calendar-event"></i> События
|
||||
</a>
|
||||
<a class="nav-link {% block nav_schedules %}{% endblock %}" href="/schedules">
|
||||
<i class="bi bi-clock"></i> Расписания отключений
|
||||
</a>
|
||||
|
||||
<!-- СИСТЕМА -->
|
||||
<div class="nav-item mt-3 px-3">
|
||||
<small class="text-white-50 text-uppercase" style="font-size: 0.7em; letter-spacing: 1px;">СИСТЕМА</small>
|
||||
</div>
|
||||
<a class="nav-link {% block nav_export %}{% endblock %}" href="/export">
|
||||
<i class="bi bi-download"></i> Экспорт
|
||||
<i class="bi bi-download"></i> Экспорт данных
|
||||
</a>
|
||||
</nav>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -34,4 +34,25 @@
|
|||
|
||||
---
|
||||
|
||||
## ПРАВИЛО №3: ЕДИНАЯ НАВИГАЦИЯ В ВЕБ-ПАНЕЛИ
|
||||
|
||||
Боковое меню должно быть **ОДИНАКОВЫМ** на ВСЕХ страницах:
|
||||
- Определяется в `web/templates/base.html`
|
||||
- Каждый шаблон наследует `{% extends "base.html" %}`
|
||||
- Активный пункт задаётся через `{% block nav_* %}active{% endblock %}`
|
||||
- **ЗАПРЕЩЕНО** создавать отдельные меню для отдельных страниц
|
||||
- **ЗАПРЕЩЕНО** удалять пункты из меню не удалив ссылки на них
|
||||
|
||||
**Структура меню (5 разделов):**
|
||||
1. **ПОЛЬЗОВАТЕЛИ** — Все жильцы, Верификация, Телефоны
|
||||
2. **КОММУНИКАЦИИ** — Рассылки, Запланированные посты, Дайджесты, Опросы, Объявления
|
||||
3. **КОНТЕНТ** — События, Расписания отключений
|
||||
4. **СИСТЕМА** — Экспорт данных
|
||||
|
||||
---
|
||||
|
||||
*Добавлено: 12.04.2026 после инцидента с ломающимся меню*
|
||||
|
||||
---
|
||||
|
||||
*Добавлено: 12.04.2026 после инцидента с тестовой рассылкой*
|
||||
|
|
|
|||
Loading…
Reference in a new issue