Django с django-nose: два одинаковых файла настроек с разным поведением при выполнении команды test

С Django 1.4.5 я использую django-nose 1.1.0.

У меня есть два файла настроек без различий.

-> % diff local_settings.py test_settings/sqlite.py

Я запускаю тесты с:

-> % python manage.py test foo --settings=local_settings

и я получаю

Ran 91 tests in 5.273s
OK (SKIP=6)

Запуск одинаковых идентичных настроек из другого места

-> % python manage.py test foo --settings=test_settings.sqlite

Тесты под залог без всякого запуска:

Ran 43 tests in 1.230s
FAILED (errors=1)

Я получил обратный след, DatabaseError: no such table: django_content_typeОтслеживание происходит через загрузку URL-адресов. Нечто, что создается там, вызывает ContentType.objects.get_for_model(self.model), Как эта разница возможна, когда настройки идентичны?

Мой файл manage.py является общим:

#!/usr/bin/env python

from django.core import management

if __name__ == "__main__":
    management.execute_from_command_line()

1 ответ

Ваша база данных NAME установить относительный путь для БД sqlite?

Если это так, вам может понадобиться просто синхронизировать базу данных с файлом настроек в test_settings.

DatabaseError: no such table: django_content_type означает, что одна из специфических таблиц django не найдена, что звучит как проблема самой БД, а не вашего приложения или самого файла настроек.

Другие вопросы по тегам