Files
rltn/DEBUG_SAVE_ISSUE.md

3.9 KiB
Raw Permalink Blame History

Диагностика проблемы с сохранением объектов

🚨 Проблема

Объекты исчезают после перезагрузки страницы - не сохраняются в БД.

🔍 Пошаговая диагностика:

Шаг 1: Проверьте консоль браузера

  1. Откройте DevTools (F12)
  2. Перейдите на вкладку Console
  3. Добавьте объект в редактор
  4. Ищите логи с эмодзи:
    • 🔄 Начинаем сохранение объекта в БД...
    • 📤 Отправляем данные на сервер
    • 📡 Ответ сервера: 200 OK
    • Объект успешно сохранен в БД

Шаг 2: Проверьте таблицу БД

  1. Нажмите кнопку "Проверить БД"
  2. Должно показать: "Таблица существует: true"
  3. Если нет - выполните миграцию:
    node run-minimal-migration.js
    

Шаг 3: Проверьте объекты в БД

  1. Нажмите кнопку "Проверить объекты"
  2. Должно показать количество объектов в БД
  3. Проверьте консоль для списка объектов

Шаг 4: Проверьте загрузку объектов

  1. Перезагрузите страницу
  2. В консоли ищите логи:
    • 🔄 Загружаем объекты для города: [ID]
    • 📊 Загружено объектов из БД: [количество]
    • Объект добавлен в сцену: [название]

🐛 Возможные проблемы и решения:

1. Таблица не существует

Симптомы: Ошибка 500 при сохранении Решение:

node run-minimal-migration.js

2. Ошибка аутентификации

Симптомы: Ошибка 401 при сохранении Решение: Проверьте токен в localStorage

3. Объект сохраняется, но не загружается

Симптомы: Логи сохранения есть, но загрузки нет Решение: Проверьте cityId при загрузке

4. Ошибка модели

Симптомы: Ошибка загрузки GLTF Решение: Проверьте путь к модели в model_url

🔧 Дополнительная диагностика:

Проверка API напрямую:

# Проверка таблицы
curl -X GET http://localhost:3000/api/test-city-objects \
  -H "Authorization: Bearer YOUR_TOKEN"

# Проверка объектов города
curl -X GET http://localhost:3000/api/cities/1/objects \
  -H "Authorization: Bearer YOUR_TOKEN"

Проверка логов сервера:

В консоли сервера должны быть логи:

Сохранение объекта: { id: null, city_id: 1, ... }
Объект сохранен: { id: 123, success: true }

📋 Чек-лист диагностики:

  • Таблица city_objects существует
  • Токен аутентификации валиден
  • cityId установлен при сохранении
  • Объект сохраняется в БД (логи в консоли)
  • Объекты загружаются при перезагрузке
  • Модели загружаются корректно
  • Нет ошибок в консоли браузера
  • Нет ошибок в логах сервера

🎯 Ожидаемый результат:

После выполнения всех проверок объекты должны сохраняться и загружаться корректно.