Изменение базы данных во время выполнения и отражение изменений в Django во время выполнения
Я занимаюсь разработкой инструмента анализа данных на основе облака и для этого использую Django(1.10).
Я должен добавить столбцы к существующим таблицам, создать новые таблицы, изменить тип данных столбцов (часть действия по очистке данных) во время выполнения и не могу найти способ обновить / отразить эти изменения во время выполнения в модели Django, потому что эти изменения потребуются в процессе дальнейшего анализа.
Я изучил "inspectdb" и "syncdb", но все эти варианты потребовали бы отключения портала и внесения тех изменений, которые мне не нужны.
Пожалуйста, вы можете предложить решение или обходной путь, как этого добиться.
Кроме того, есть ли способ, с помощью которого я могу выбрать, какую базу данных я хочу работать из списка баз данных на моем сервере MySQL, после запуска Django.
1 ответ
ORM Django может не подойти вам, если вам нужно изменить свою схему (или db) онлайн - схема определяется в модулях python и загружается один раз при запуске веб-сервера Django.
Вы по-прежнему можете использовать шаблоны, формы и другие библиотеки Django и написать свой собственный слой доступа к БД, который динамически манипулирует БД с помощью python.