0

我运行python web2py.py终端(mac ox lion)并转到我的控制器非常简单。在我有我认为正在执行的代码之前,但现在我的代码中只剩下一个 this 并且我仍然遇到问题:

def login():
    import pdb
    pdb.set_trace()
    value = 'test'
    return dict(test=value)

从这里我得到:

/Users/auser/web/public/applications/api/controllers/profile.py(10)login()
-> value = 'test'
(Pdb) Tcl_WaitForEvent: Notifier not initialized
Abort trap: 6

有谁知道这里发生了什么。我正在使用 Mac OSX 附带的标准 Python 风格 - Python 2.7.1

系统挂起一瞬间,然后吐出Abort Trap: 6. 然后我从 mac osx 得到“你想用 python 报告这个问题吗”的嫌疑人,因为它认为世界爆炸了。我不知道 web2py 是否有一个终止开关或 pdb 有什么,但它让我发疯。

当不涉及 web2py 时 pdb 工作正常我也测试过。

我不想下载 winpdb,因为我必须切换我所在的 python 环境(64 到 32),我真的不想这样做并造成另一个头痛。特别是当它在没有 web2py 的情况下工作时?

任何帮助将不胜感激。

干杯,

森森蒂亚

4

1 回答 1

0

我走错路了。它一定是试图冻结 web2py 服务器并导致严重故障。

我现在使用它的方式是在交互式 shell 模式下修复服务器环境问题 - 我不敢相信我之前没有尝试过。

我使用相同的代码:

def login():
    import pdb
    pdb.set_trace()
    value = 'test'
    return dict(test=value)

并在终端使用它

python web2py.py --shell=/api/profile/login -M

然后它应该会中断。

愤怒平息……

于 2013-03-07T05:50:30.607 回答