У меня проблемы с переносом данных моей компании с Magento на Django Rest Framework [закрыто]

Я заметил, что таблицы SQL не были достаточно организованы для типичной миграции, поэтому я решил работать над новой более легкой БД и использовать Django из-за его стабильности для обработки посева новой БД из БД Magento через API, который он предоставляет.

Основные таблицы, которые мне нужны для новой БД, следующие:

  1. Продукты
  2. Категории
  3. Бренды
  4. Детали клиента

У меня есть скрипт, который успешно работает с категориями и брендами. Мне еще предстоит попробовать Customer Details, и основная проблема заключается в том, что товары имеют изображения, прикрепленные к ним, и я не уверен, как эффективно выполнить миграцию изображений. Также категории забывают свою родительскую категорию, причина в том, что, поскольку все они создаются одновременно, ID родительской категории всегда возвращается не найденным.

Я уже создал несколько скриптов, семена категорий и семена брендов полностью функциональны. Я создал еще один скрипт для запуска всех необходимых миграций.

#!/bin/bash

set -e

GREEN='\033[0;32m'
RED='\033[0;31m'
RESET='\033[0m'
GAP="\n\n\n"

echo "Installing requirements..."
pip install -r requirements.txt
echo -e "${GREEN}Requirements installed!${RESET}${GAP}"

echo "Migrating database..."
python manage.py makemigrations
python manage.py makemigrations helpers api
python manage.py migrate
echo -e "${GREEN}Migration complete!${RESET}${GAP}"

echo "Seeding Image..."
python manage.py seed_image
echo -e "${GREEN}Default Image seeded!${RESET}${GAP}"

echo "Running Tests ..."
python manage.py test
echo -e "${GREEN}Tests complete!${RESET}${GAP}"

echo "Seeding categories..."
python manage.py seed_categories
echo -e "${GREEN}Categories seeded!${RESET}${GAP}"

echo "Seeding brands..."
python manage.py seed_brands
echo -e "${GREEN}Brands seeded!${RESET}${GAP}"

echo "Seeding products..."
python manage.py seed_products
echo -e "${GREEN}Products seeded!${RESET}${GAP}"

echo "Running server..."
python manage.py runserver
Вернуться на верх