iPython - 在实现Django之后"破坏"shell /终端

use*_*116 8 django ipython

我将iPython shell嵌入Django脚本(带有开发服务器,例如在localhost的runserver),如下所示:

...
from IPython.Shell import IPShellEmbed
ipshell = IPShellEmbed()
ipshell()
...
Run Code Online (Sandbox Code Playgroud)

这给了我在所需位置的互动外壳.现在,如果修改源代码,Django会自动重新加载,可能没有正确退出iPython shell,并"中断"我的终端模拟器(xterm,konsole) - 文本变得不可见等等(如果在Django中运行的iPython终止于Ctrl,效果相同+ d).

有什么建议可能导致这个?(我可能以错误的方式使用iPython,但谁知道).

Mar*_*ent 4

我无法回答为什么会出错的问题,但我可以告诉您如何从中恢复:退出调试服务器并发出命令reset

防止这种情况发生的另一种方法是使用命令--reload上的开关runserver。这意味着 Django 不会在更改后重新加载,但也不会破坏您的调试器。