Files
rltn/DEBUG_SAVE_ISSUE.md

92 lines
3.9 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Диагностика проблемы с сохранением объектов
## 🚨 Проблема
Объекты исчезают после перезагрузки страницы - не сохраняются в БД.
## 🔍 Пошаговая диагностика:
### **Шаг 1: Проверьте консоль браузера**
1. Откройте DevTools (F12)
2. Перейдите на вкладку Console
3. Добавьте объект в редактор
4. Ищите логи с эмодзи:
- 🔄 Начинаем сохранение объекта в БД...
- 📤 Отправляем данные на сервер
- 📡 Ответ сервера: 200 OK
- ✅ Объект успешно сохранен в БД
### **Шаг 2: Проверьте таблицу БД**
1. Нажмите кнопку "Проверить БД"
2. Должно показать: "Таблица существует: true"
3. Если нет - выполните миграцию:
```bash
node run-minimal-migration.js
```
### **Шаг 3: Проверьте объекты в БД**
1. Нажмите кнопку "Проверить объекты"
2. Должно показать количество объектов в БД
3. Проверьте консоль для списка объектов
### **Шаг 4: Проверьте загрузку объектов**
1. Перезагрузите страницу
2. В консоли ищите логи:
- 🔄 Загружаем объекты для города: [ID]
- 📊 Загружено объектов из БД: [количество]
- ✅ Объект добавлен в сцену: [название]
## 🐛 Возможные проблемы и решения:
### **1. Таблица не существует**
**Симптомы:** Ошибка 500 при сохранении
**Решение:**
```bash
node run-minimal-migration.js
```
### **2. Ошибка аутентификации**
**Симптомы:** Ошибка 401 при сохранении
**Решение:** Проверьте токен в localStorage
### **3. Объект сохраняется, но не загружается**
**Симптомы:** Логи сохранения есть, но загрузки нет
**Решение:** Проверьте cityId при загрузке
### **4. Ошибка модели**
**Симптомы:** Ошибка загрузки GLTF
**Решение:** Проверьте путь к модели в model_url
## 🔧 Дополнительная диагностика:
### **Проверка API напрямую:**
```bash
# Проверка таблицы
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 установлен при сохранении
- [ ] Объект сохраняется в БД (логи в консоли)
- [ ] Объекты загружаются при перезагрузке
- [ ] Модели загружаются корректно
- [ ] Нет ошибок в консоли браузера
- [ ] Нет ошибок в логах сервера
## 🎯 Ожидаемый результат:
После выполнения всех проверок объекты должны сохраняться и загружаться корректно.