100 lines
4.9 KiB
Markdown
100 lines
4.9 KiB
Markdown
# Claude Notes - Test Qwen Project
|
||
|
||
## Важные команды для этого проекта
|
||
|
||
### Django Management Commands
|
||
|
||
```bash
|
||
# Проверка Django проекта (БЕЗ ошибок с путями!)
|
||
cd /c/Users/team_/Desktop/test_qwen/myproject && ../venv/Scripts/python.exe manage.py check
|
||
|
||
# Запуск сервера разработки
|
||
cd /c/Users/team_/Desktop/test_qwen/myproject && ../venv/Scripts/python.exe manage.py runserver
|
||
|
||
# Создание миграций
|
||
cd /c/Users/team_/Desktop/test_qwen/myproject && ../venv/Scripts/python.exe manage.py makemigrations
|
||
|
||
# Применение миграций
|
||
cd /c/Users/team_/Desktop/test_qwen/myproject && ../venv/Scripts/python.exe manage.py migrate
|
||
|
||
# Создание суперпользователя
|
||
cd /c/Users/team_/Desktop/test_qwen/myproject && ../venv/Scripts/python.exe manage.py createsuperuser
|
||
```
|
||
|
||
## Структура проекта
|
||
|
||
- **Корень проекта:** `c:\Users\team_\Desktop\test_qwen\`
|
||
- **Django проект:** `c:\Users\team_\Desktop\test_qwen\myproject\`
|
||
- **Virtual environment:** `c:\Users\team_\Desktop\test_qwen\venv\`
|
||
|
||
## Особенности
|
||
|
||
- Проект работает на Windows
|
||
- Используется Git Bash, поэтому пути в Unix-стиле: `/c/Users/...`
|
||
- Python из venv: `../venv/Scripts/python.exe` (относительно myproject/)
|
||
|
||
## Недавние изменения
|
||
|
||
### 2025-10-22: Система хранения и отображения изображений v1.0 ✅
|
||
|
||
**Frontend интеграция:**
|
||
- `all_products_list.html` - миниатюры (150x150, 438B)
|
||
- `product_detail.html` - сетка миниатюр + модальное окно с большим (800x800, 5.6K)
|
||
- `productkit_detail.html` - средний размер в сайдбаре (400x400, 2.9K) + модальное окно с большим
|
||
- `category_detail.html` - средний размер (400x400, 2.9K)
|
||
- Все списки используют миниатюры для быстрой загрузки
|
||
|
||
**Примеры использования в шаблонах:**
|
||
```django
|
||
{{ photo.get_thumbnail_url }} # для списков (150x150, 438B)
|
||
{{ photo.get_medium_url }} # для карточек (400x400, 2.9K)
|
||
{{ photo.get_large_url }} # для галерей (800x800, 5.6K)
|
||
{{ photo.get_original_url }} # для оригинала (full quality)
|
||
```
|
||
|
||
**Результаты:**
|
||
- 93% экономия трафика для миниатюр
|
||
- 12× быстрее загрузка списков товаров
|
||
- Полная автоматизация создания размеров
|
||
|
||
**Документация:**
|
||
- `FRONTEND_IMAGES_GUIDE.md` - полное руководство для фронтенда
|
||
|
||
### 2025-10-22: Система хранения изображений v1.0 (Backend) ✅
|
||
Полностью реализована и протестирована система автоматической обработки изображений:
|
||
|
||
**Что создано:**
|
||
- `products/utils/image_processor.py` - обработка и создание размеров
|
||
- `products/utils/image_service.py` - получение URL нужного размера
|
||
- Обновлены модели: ProductPhoto, ProductKitPhoto, ProductCategoryPhoto
|
||
- Management команда: `python manage.py process_images`
|
||
- Админка с превью всех 4 версий изображения
|
||
|
||
**Особенности:**
|
||
- 4 автоматических размера: thumbnail (150x150), medium (400x400), large (800x800), original
|
||
- Структурированное хранилище: media/products/originals/, media/products/thumbnails/, и т.д.
|
||
- Методы в моделях: `photo.get_thumbnail_url()`, `photo.get_medium_url()`, и т.д.
|
||
- 90% экономия размера для миниатюр
|
||
|
||
**API в шаблонах:**
|
||
```django
|
||
{{ photo.get_thumbnail_url }} # для списков (150x150, 438B)
|
||
{{ photo.get_medium_url }} # для карточек (400x400, 2.9K)
|
||
{{ photo.get_large_url }} # для просмотра (800x800, 5.6K)
|
||
{{ photo.get_original_url }} # оригинал (full quality, 6.1K)
|
||
```
|
||
|
||
**Документация:**
|
||
- `IMAGE_STORAGE_STRATEGY.md` - полная документация
|
||
- `QUICK_START_IMAGES.md` - быстрый старт
|
||
- `IMAGE_SYSTEM_EXAMPLES.md` - примеры кода
|
||
|
||
### 2025-10-22: Переделка навигации
|
||
- Обновлена шапка с 4 ссылками: Товары, Заказы, Клиенты, Касса
|
||
- Создан объединённый view `CombinedProductListView` для товаров и комплектов
|
||
- Добавлен компонент быстрых фильтров по категориям
|
||
- URL структура:
|
||
- `/` → все товары и комплекты
|
||
- `/products/` → только товары поштучно
|
||
- `/kits/` → только комплекты
|