Исправления и улучшения Admin-панели
Изменённые файлы
| Файл | Изменений |
|---|---|
| templates/admin/index.html | 8 правок |
| static/css/11_admin/admin_custom.css | 9 правок |
| templates/admin/main/server_info.html | 1 правка |
Исправленные ошибки вёрстки
1. Невалидный ID с пробелом (index.html)
diff
- <div id="content-main container-fluid">
+ <div id="content-main" class="container-fluid">
Пробел в id — нарушение HTML-спецификации и ломает JavaScript document.getElementById().
2. Конфликтующие inline-стили (index.html)
Весь блок {% block extrastyle %} с ~65 строками inline CSS удалён. Все стили были захардкожены с light-mode значениями (#f8fafc, #e2e8f0), что конфликтовало с тёмной темой из admin_custom.css. Стили перенесены в CSS-файл с правильными значениями тёмной темы.
3. 4-колоночная таблица параметров процесса (server_info.html)
diff
- <tr>
- <td>PID</td><td>{{ pid }}</td>
- <td>Статус</td><td>{{ status }}</td> ← 4 td в одной строке!
- </tr>
+ <tr><td>PID</td><td>{{ pid }}</td></tr>
+ <tr><td>Статус</td><td>{{ status }}</td></tr>
+ <tr><td>Память</td><td>{{ memory }}</td></tr>
+ <tr><td>Время запуска</td><td>{{ time }}</td></tr>
+ <tr><td>Загрузка CPU</td><td>{{ cpu }}%</td></tr>
CSS .info-table рассчитан на 2-колоночную таблицу — 4 td ломало выравнивание.
4. Дублированный border в #changelist-filter (admin_custom.css)
diff
- border-left: 1px solid var(--card-border) !important; ← лишнее
border-radius: var(--radius) !important;
border: 1px solid var(--card-border) !important; ← перекрывало
5. CSS lint: background-clip без стандартного свойства (admin_custom.css)
diff
-webkit-background-clip: text;
+ background-clip: text; ← добавлено в 2 местах
Улучшения CSS (admin_custom.css)
6. Прокрутка sidebar
diff
- overflow: hidden !important;
+ overflow-x: hidden !important;
+ overflow-y: auto !important;
При большом количестве пунктов меню навигация теперь прокручивается, а не обрезается.
7. Адаптивная сетка dashboard
css
/* Добавлен breakpoint для планшетов */
@media (min-width: 768px) and (max-width: 1200px) {
.dashboard-grid { grid-template-columns: repeat(3, 1fr); }
}
8. Новая карточка — Тикеты поддержки
Цветовой вариант:
linear-gradient(135deg, #0ea5e9, #6366f1)(голубой→фиолетовый)Иконка:
fa-headsetПоказывает: всего тикетов + количество открытых
Данные из
admin_stats.tickets.total/admin_stats.tickets.open
9. Перенесены утилитарные классы из inline <style>
.btn-xs, .gap-flex-custom, .action-btn-group, .text-warning-dark, .border-left-warning — все с правильными значениями тёмной темы.
10. Стили для фильтра журнала действий
.log-filter-btn — 4 варианта: базовый, .active-add (зелёный), .active-change (жёлтый), .active-delete (красный).
Улучшения JavaScript (index.html)
11. Оптимизация countup
diff
- // Запускал RAF-цикл даже при target=0 (деление на ноль!)
+ if (target === 0) { counter.innerText = 0; return; }
12. Анимация прогресс-баров
Раньше width: 0% задавался инлайново и CSS-анимация не работала. Теперь: начальный width не задан (CSS: width: 0% через @keyframes progressGrow), JS через setTimeout(120ms) присваивает data-progress значение, и CSS-анимация срабатывает.
13. Фильтр журнала действий
Новые кнопки «Все / Добавления / Изменения / Удаления» с JS-фильтрацией строк таблицы по атрибуту data-action-type. Каждая строка теперь помечена:
html
<tr data-action-type="add|change|delete">
14. Исправлен цвет прогресс-бара «Клиенты»
diff
- background: var(--primary-gradient) ← синий (как Пользователи)
+ background: var(--success-gradient) ← зелёный (соответствует цвету карточки)
Проверка
✅
manage.py check— 0 ошибок, 0 предупреждений✅ Сервер отвечает на
/admin/✅ Шаблоны Django синтаксически корректны
Обсуждение статьи
0К этой статье пока нет комментариев. Будьте первым, кто выразит свое мнение!
Оставить комментарий
Связанные новости
10Похожие материалы
Улучшению приложения main
Результаты рефакторинга файловой структуры, шаблонов и стилей проекта
Я обновил шаблоны страниц «Портфолио» и «Услуги»
Я нашел и исправил проблему.