Дебаг Джанги
Как проходит дебаг джанги обычно? В 90% случаев хватает внимательно изучить желтенький джанговский трейсбек ошибки, со всеми переменными и кодом, ещё в 9% хватает расставить print‘ы, а в совсем запущенных случаях приходит на помощь winpdb.
Но после одной отличной новости можно значительно облегчить себе жизнь - перестать расставлять print’ы, перестать изучать трейсбеки досконально и отказаться от удалённого дебаггера, заодно показав язык Pylons’ам, в которых такая штука есть давно. :-)
Вообще я этот пост прочёл и пролистал, когда он появился неделю назад. А тут случайно наткнулся на него ещё раз и решил попробовать. Фантастика! :-) Встречайте - консоль прямо в трейсбеке. :) Я сделал скрин (250 кб) моих первых шагов в неизведанное. ;-)
Рекомендую. Офигенская штука. Сам по себе werkzeug небольшой, стартует быстро (быстрее джанги), проблем не вызывает и вообще… просто красота теперь. :)
Comments
Привет. А можно немного подробнее - как это заработало?
У меня все остановилось на
django.core.exceptions.ImproperlyConfigured Error importing middleware django.contrib.sessions.middleware: "No module named tsm" /var/lib/python-support/python2.4/django/core/handlers/base.py in load_middleware, line 31гугление особо ответов не дало - там в основном это касалось апача. а тут же апач не виноват ниразу…
А какой версии Django? Werkzeug стоит же? (на всякий случай спрашиваю - я что-то вообще не могу упоминаний про
tsmнайти)А как это под виндой можно поставить, чтоб все проекты можно было дебужить (а не копировать каждый раз django-run-debagged.py в каталог проекта и ставить переменную DJANGO_SETTINGS_MODULE)?
Кидает ошибку Could not import settings
d:\python25\scripts\test\settings.py(Is it on sys.path? Does it have syntax errors?): No module namedd:\python25\scripts\test\settings.pyМодуль такой есть!
d:\python25\scripts\test\settings.pyНуу… я копирую скрипт
werkzeug-debugged.pyв каталоги проектов (рядом сsettings.py) и не парюсь. Он, правда, чуть изменён относительно оригинала, но не сильно. Выглядит так:P.S.Чтоб пути выглядели нормально, можно обрамлять их символами ` :-)
хммм.. Запускаю обновленную версию, ругается на Error while importing URLconf ‘test.urls’: No module named test.urls
в settings.py - ROOT_URLCONF = ‘test.urls’, ладно меняю на ROOT_URLCONF = ‘urls’, дальше ругается на Error while importing URLconf ‘urls’: No module named test.views
Как бы это все заимпортить, чтоб не переписывать кучу настроек? Пробовал сделать еще такое:
но не помогло ни разу :(
P.S.Спасибо, пути поправил
Напиши вместо
'settings'-'test.settings'. Я просто никогда не использую имя проекта в импортах.Рулез !
Вот только так это чудо заработало у меня под windows:
Что-то не разобрался, как включается подсветка кода, сорри..
Автоматом.
О, спасибо! У меня тоже только после этого заработало.
Здравствуйте.
При запуске этого дебагера вываливается:
Traceback (most recent call last): File “[HTML_REMOVED]”, line 1, in [HTML_REMOVED] File “/home/Werkzeug-0.1/werkzeug/init.py”, line 118, in getattr module = import(object_origins[name], None, None, [name]) File “werkzeug/debug/init.py”, line 16, in [HTML_REMOVED] from werkzeug.debug.render import debug_page, load_resource File “werkzeug/debug/render.py”, line 34, in [HTML_REMOVED] t_body = get_template(‘body.tmpl’) File “werkzeug/debug/render.py”, line 20, in get_template unicode_mode=False) File “werkzeug/templates.py”, line 411, in from_file f = open(file, ‘r’) IOError: [Errno 2] No such file or directory: ‘werkzeug/debug/shared/body.tmpl’
Не могу сказать ничего определённого, кроме того, что werkzeug не может найти свой темплейт… Может стоит проверить, как он установлен… А вообще такое лучше спрашивать у авторов, на irc.freenode.net, канал #pocoo.
Comment form for «Дебаг Джанги»