使用komodo调试Django

对于如何使用komodo来调试Django程序,这里做一简单描述,以备查用。

主要采用远程调用方式来调试,亦即使用komodo的pydbgp.py

具体做法如下:

1.设置komodo debugger connection

Edit--> Preference...-->Debugger  Debugger Connection 选中 a specific port

2.调用pydbgp.py

python "D:\Program Files\ActiveState Komodo IDE 5\lib\support\dbgp\bin\pydbgp.py" -d localhost:9000 manage.py runserver --noreload

其中D:\Program Files\ActiveState Komodo IDE 5\为Komodo的安装路径

3.启动调试server以后,可以通过http://localhost:8000/来访问Django项目(注:runserver默认启用8000端口,当然在调用其他端口,比如0.0.0.0:8080)

在使用的时候一定要的记得打开Komodo的debugger选项,Debug-->Listen for Debugging Connections,确保Listen for Debugging Connections被勾选上,在调试的过程中同时还可以查看当前Listen Status。

附加一个python写的小代码,直接调用pydbgp.py,而不用再cmd中敲来敲去,使用之前只需要更改一下Komodo安装路径,并将该代码放置在要调试的Django project中即可

#!/usr/bin/env python
import os
import sys
import threading

class ThreadClass(threading.Thread):
    def run(self):
        os.system(r'''python "D:\Program Files\ActiveState Komodo IDE 5\lib\support\dbgp\bin\pydbgp.py" -d localhost:9000 manage.py runserver --noreload''')
#get current working home
print 'corrent working home is ',
print os.path.abspath('.')
#execute pydbgp.py
#os.system(r'''python "D:\Program Files\ActiveState Komodo IDE 5\lib\support\dbgp\bin\pydbgp.py" -d localhost:9000 manage.py runserver --noreload''')
t = ThreadClass()
t.start()
print 'You can do some debugging works...'

原文地址:https://www.cnblogs.com/Jerryshome/p/1778706.html