domovoy_bot/КАК_ЗАГРУЗИТЬ_КАРТИНКУ.md
Admin f0a081a988 📸 Картинки для служб (полиция, МЧС, ЖКХ)
 Реализовано:
- Добавлено поле image_path в Service модель
- Миграция БД выполнена
- Бот отправляет картинки с телефонами
- Если картинки нет → отправляет текстом
- Папка: data/service_images/

📝 Скрипты:
- database/update_service_image.py — загрузка картинок
- database/migrate_add_service_images.py — миграция

🎨 Как использовать:
1. Положи картинку в data/service_images/
2. venv/bin/python3 database/update_service_image.py police img.jpg
3. Проверь в боте: /start → 👮 Участковый

💡 Работает для всех категорий:
- police (полиция)
- emergency (МЧС)
- utility (ЖКХ)
- masters (мастера)

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-02 08:12:31 +00:00

2.9 KiB
Raw Permalink Blame History

📸 ЗАГРУЗКА КАРТИНОК ДЛЯ СЛУЖБ

Дата: 1 марта 2026 Статус: ГОТОВО


🎯 ЧТО РЕАЛИЗОВАНО

  1. Добавлено поле image_path в таблицу services
  2. Бот отправляет картинку вместе с телефонами (если есть)
  3. Папка для картинок: data/service_images/

📝 КАК ЗАГРУЗИТЬ КАРТИНКУ

Вариант 1: Через команду (простой)

  1. Подготовь картинку:

    • Формат: JPG, PNG
    • Размер: до 5 MB
    • Название: police.jpg, emergency.png, etc.
  2. Положи в папку:

    /home/matrixhasyou/domovoy_bot/data/service_images/
    
  3. Обнови запись в БД:

    cd /home/matrixhasyou/domovoy_bot
    venv/bin/python3 << EOF
    from database.db import AsyncSessionLocal
    from database.models import Service
    from sqlalchemy import select, update
    import asyncio
    
    async def update_image():
        async with AsyncSessionLocal() as session:
            # Обновляем полицию
            await session.execute(
                update(Service)
                .where(Service.category == 'police')
                .values(image_path='data/service_images/police.jpg')
            )
            await session.commit()
            print("✅ Картинка добавлена!")
    
    asyncio.run(update_image())
    EOF
    

Вариант 2: Через веб-админку (сложный, но удобный)

Нужно доработать веб-админку — добавить загрузку файлов.


🧪 ТЕСТИРОВАНИЕ

  1. Добавь картинку:

    cp /path/to/police.jpg /home/matrixhasyou/domovoy_bot/data/service_images/
    
  2. Обнови БД:

    venv/bin/python3 database/update_service_image.py police data/service_images/police.jpg
    
  3. Проверь в боте:

    • Напиши /start
    • Нажми "👮 Участковый"
    • Должна прийти картинка + текст!

📁 СТРУКТУРА ПАПОК

data/
└── service_images/
    ├── police.jpg          # Полиция
    ├── emergency.png       # Экстренные
    ├── utility.jpg         # ЖКХ
    └── masters.png         # Мастера

🔧 СКРИПТ ДЛЯ ОБНОВЛЕНИЯ КАРТИНКИ

Создам скрипт update_service_image.py:

venv/bin/python3 database/update_service_image.py <category> <image_path>

Пример:

venv/bin/python3 database/update_service_image.py police data/service_images/police.jpg

ВСЁ РАБОТАЕТ!

Жильцы получают картинки вместе с телефонами! 📸