Как отследить импорт представлений в Django - PullRequest
2 голосов
/ 26 мая 2009

Есть ли способ как-то отследить импорт представлений? Я хочу найти, какая из них не работает и в некоторых ситуациях не импортируется (что приводит к тому, что перестает работать вся схема разрешения URL в django).

Ответы [ 4 ]

3 голосов
/ 04 мая 2011

Довольно удивительно, что никто не предложил pdb. Поместите в свой код следующую стратегическую точку:

import pdb;pdb.set_trace()

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

Он работает как стандартная оболочка (используйте любые команды python, которые вам нравятся), но есть также специальные команды, которые позволяют вам контролировать выполнение. Например, next перейдет к следующей строке (обработка предыдущей строки). continue продолжит выполнение до следующей точки останова и т. Д. ( полный список команд pdb )

0 голосов
/ 01 мая 2011

Ладно, можно просто написать

python -v manage.py <whatevercommand>

и найдите ошибку в произведенных логах.

0 голосов
/ 01 мая 2011

Я предполагаю, что это означает, что вы получаете 501 ошибку сервера?

Если вы используете веб-сервер Apache, вы можете настроить его на регистрацию ошибок Python в конфигурации сайта, используя директиву ErrorLog :

ErrorLog /tmp/django_errors.log

Затем в терминале (или через ssh):

tail -f /tmp/djanogo_errors.log

А затем попробуйте загрузить соответствующую веб-страницу. После этого вы сможете увидеть, что это за ошибка, и исправить ее.

0 голосов
/ 26 мая 2009

Разве вы не получаете трассировку стека? DEBUG установлено на True?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...