Проблема с носом django и югом, имеющим несколько баз данных - PullRequest
2 голосов
/ 05 февраля 2011

У меня был проект django с одной базой данных (по умолчанию).South был установлен для генерации скриптов переноса и носа в качестве тестовой среды.Модели были построены на этой базе данных.Все тесты были успешно выполнены.

Впоследствии мне нужно было подключить вторую базу данных (устаревшую), которую я также добавил в конфигурацию DATABASES.Я получаю доступ к этой базе данных, используя raw sql и без моделей.Пытаясь запустить ранее запущенные тесты, я заметил, что:

  1. nose также создает тестовую базу данных для устаревшей базы данных.созданный в этой базе данных
  2. южный также запускает все сценарии миграции для устаревшей базы данных и не может этого сделать

Я хотел бы отключить создание тестовой устаревшей базы данныхзапуск сценариев миграции на нем.В идеале я бы хотел сам создавать таблицы в тестовой устаревшей базе данных, выполняя необработанные операторы sql create-insert.Это возможно?

Спасибо за любую помощь.

1 Ответ

0 голосов
/ 19 февраля 2011

Ваш путь наименьшего сопротивления, вероятно, состоит в том, чтобы написать собственную команду управления запуском теста. Для этого вы можете либо переопределить существующую команду, либо просто создать отдельную команду с нужным вам поведением.

Документы для создания пользовательских команд управления можно найти на официальном django docs , а достойный пример переопределения стандартной команды "test" можно найти в django-test-extensions проект.

...