Eclipse / PyDev + Django отладка - PullRequest
4 голосов
/ 23 мая 2009

Eclipse / PyDev, Python 2.6, Django 1.1

Все работает в режиме запуска. Если я поместил точку отладки в файл manage.py, точка останова сработала. Но когда я вставил его в любой метод действия, он ничего не вызывает: (

Ответы [ 2 ]

10 голосов
/ 07 января 2010

Обычно проблема в том, что вы запускаете с автоматической перезагрузкой в ​​django, и в этом случае другой процесс фактически загружает страницы, поэтому вам нужно запустить его с опцией no reload или использовать удаленный отладчик.

(Чтобы настроить PyDev для работы с Django, см .: http://pydev.org/manual_adv_django.html)

Обратите внимание, что если вы хотите выполнить без функции автоматической перезагрузки (что PyDev должен делать автоматически при создании нового запуска Django), вы можете делать все напрямую (т. Е. Отладчик и запуск не требуют каких-либо специальных настроек ).


Примечание : в последнее время ситуация немного улучшилась, поэтому, хотя приведенный выше ответ остается в силе, есть улучшения для тех, кто хочет развиваться с автоматической перезагрузкой:


Ответ с автоперезагрузкой:

Если вы хотите включить автоматическую перезагрузку во время разработки, воспользуйтесь советами по адресу: PyDev и Django: как перезапустить сервер dev? (чтобы устранить проблему, из-за которой Django оставит дочерние процессы живыми, когда основной процесс убит)

И посмотрите сеанс, связанный с удаленным отладчиком, по адресу: http://pydev.org/manual_adv_remote_debugger.html, чтобы увидеть, как подключить отладчик к PyDev при использовании функции автоматической перезагрузки (в основном вам нужно запустить удаленный отладчик, но будет регулярно добавлять точки останова, и PyDev будет останавливаться на тех, которые вы вызываете pydevd.patch_django_autoreload () перед основным сеансом, то есть: before if __name__ == "__main__":, add the following: import pydevd;pydevd.patch_django_autoreload()).

0 голосов
/ 14 августа 2013

также, если при попытке импортировать pydevd затмение не может найти зависимость pydevd. Обязательно добавьте его из папки плагинов:

  • Найдите ваш eclipse / plugins / org.python.pydev_ x.x.x / pysrc, где x.x.x - версия вашего плагина eclipse pydev. В папке eclipse / plugins вы найдете множество папок, имена которых начинаются с одинакового имени, только у одной из них будет подпапка pysrc ( и правильный номер версии).
  • Добавьте eclipse / plugins / org.python.pydev_ x.x.x / pysrc во внешние библиотеки вашего проекта:
    • Щелкните правой кнопкой мыши на проводнике проекта.
    • Перейдите в свойства / PyDev - PYTHONPATH / Внешние библиотеки / и нажмите Добавить исходную папку .
    • Найдите папку eclipse / plugins / org.python.pydev_ x.x.x / pysrc в предоставленном браузере.
...