1

我无法使用 Pyramid 框架在 Aptana 中启动调试模式。

我使用的平台是 Debian/Linux,运行 Python 3。

这些是我用来创建和运行 Pyramid 项目的命令。(来源

1. pcreate -s starter MyProject      //create project
2. python3.2 setup.py develop        //setup develop mode
3. pserve development.ini            //run application

当我运行第三步时,终端会显示这一点,我可以打开浏览器并查看该站点。

Starting server in PID 15507.
serving on "http://0.0.0.0:6543"

如何运行调试器并设置断点,以便逐步执行代码。

4

3 回答 3

2

我建议您查看python 调试器。还有一个调试 Pyramid 应用程序的示例。这也可能有帮助:通过 Eclipse 调试 Pylons 应用程序

于 2012-05-24T09:47:17.460 回答
0

这是(或至少是)Waitress(运行您的 web 应用程序的本地服务器)与 Aptana/pydev/Eclipse 交互的问题。

对于 Python 2.7,简单的答案是使用 paster 作为本地服务器,这就是我成功的做法。不幸的是,Paster 还没有被移植到 Python 3,所以如果 Python 3 是必需的,那就不走运了。

不过,这现在可能已经修复,详见此处。还有一些更详细的关于如何让贴纸工作的说明,尽管对于 3.x 这对你没有帮助。

于 2012-06-27T20:06:35.557 回答
0

我使用 Xubuntu/linux - python3 我正在使用 eclipse-pydev。,这就是我通过 eclipse 调试的方式,我使用 app.py,在项目文件夹中(*MyProject)

应用程序.py

from MyProject import main

if __name__ == '__main__':
    settings = {
    'pyramid.reload_templates': 'true',
    'pyramid.debug_authorization': 'false',
    'pyramid.debug_notfound': 'false',
    'pyramid.debug_routematch': 'false',
    'pyramid.default_locale_name': 'en'
    }
    ip="127.0.0.1"
    port="6543"
    app = main(None,settings)

#For waitress
    from waitress import serve
    print("Starting Server on http://{0}:{1}".format(ip,port))    
    serve(app,host=ip,port=port,threads=50)

放置断点(例如将其放置在 app.py 中并查看代码运行,将其放置在 views.py-return 语句中并查看它被触发,当您移动到不同的路线时)并单击 eclipse-debug python app 中的 DEBUG 图标.py.,eclipse 要求打开调试透视窗口并且 eclipse-console 显示,

pydev debugger: starting (pid: 9380)

eclipse 打开调试透视窗口,触发的断点显示在调试窗口中。

我正在使用,

 pserve development.ini

但我觉得使用上面的脚本很容易从 eclipse 启动 web 应用程序,我可以使用控制台(eclipse)轻松停止运行 server-localhost。

于 2014-12-10T12:42:13.660 回答