Интеграция Django с унаследованной базой данных

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

Этот документ предполагает, что вы знакомы с основами Django, которые описаны в учебнике.

После настройки Django следуйте стандартному процессу для интеграции с существующей базой данных.

Предоставьте Django параметры вашей базы данных

Вам потребуется указать параметры соединения с вашей базой данных и её имя. Делается это редактированием параметра DATABASES, указав значения для следующих ключей соединения 'default':

Автоматическая генерация моделей

Django представляет утилиту inspectdb, которая может создавать модели по существующей базе данных. Вы можете посмотреть результат, запустив следующую команду:

python manage.py inspectdb

Сохраните его в файл, используя стандартный механизм перенаправления Unix:

python manage.py inspectdb > models.py

Такой подход является вспомогательными. Обратитесь к документации на inspectdb для подробностей.

После приведения моделей в нормальный вид, сохраните их в файле models.py, разместив его в пакете, который хранит ваше приложение. Затем добавьте ваше приложение в INSTALLED_APPS.

Установка основных таблиц Django

Теперь, запустите команду syncdb для установки в базу данных стандартных компонентов Django, таких как права пользователей и типы контента:

python manage.py syncdb

Тестирование и настройка

Это были основные шаги. Теперь вам может потребоваться изменить созданные модели, чтобы они работали так, как вам необходимо. Попробуйте обратиться к данным через API баз данных Django, отредактировать их с помощью интерфейса администратора или изменить сам файл с моделями.