Как отключить южную отладку в django? - PullRequest
13 голосов
/ 20 декабря 2011

Когда я запускаю свои тесты в Django, после сбоя я получаю несколько страниц отладочной информации с юга, например:

south: DEBUG: south execute "CREATE INDEX "sometable_4d5bad5" ON "video_playable" ("network_id");" with params "[]"
south: DEBUG: south execute "CREATE INDEX "sometable_790e6d98" ON "video_playable" ("published");" with params "[]"
south: DEBUG: south execute "CREATE INDEX "sometable_72312277" ON "video_playable" ("archived");" with params "[]"

И со всеми этими выводами журнала соответствующие сообщения об ошибках теряются в море мусора. Есть ли способ отключить этот выход?

Ответы [ 3 ]

15 голосов
/ 27 июня 2012

Поместите это где-нибудь в своем коде.У меня это в myapp/migrations/__init__.py

import logging
south_logger=logging.getLogger('south')
south_logger.setLevel(logging.INFO)
7 голосов
/ 20 декабря 2011

Вы можете установить SOUTH_TESTS_MIGRATE на False в вашем setting.py. Это отключит все миграции во время тестов. Я знаю, что это не совсем то, что вы хотите, но надежда будет полезна

Если это Ложь, интеграция юга с тестом бегуна сделает тест база данных должна быть создана с использованием syncdb, а не с помощью миграций ( дефолт). Установите это значение в False, если у вас есть миграции, которые занимают слишком много времени мигрировать каждый раз при запуске тестов, но будьте осторожны, если вы полагаетесь на миграции делать особые вещи.

3 голосов
/ 31 августа 2012
import logging
import south.logger
logging.getLogger('south').setLevel(logging.CRITICAL)

Я могу установить это в своем файле setting / testing.py

Также, если вас беспокоят ваши тесты на django-нос, добавьте

nosetests --nologcapture
...