【问题标题】:Is there any way to use django shell without restarting when change code有没有办法在更改代码时使用 django shell 而无需重新启动
【发布时间】:2013-06-28 03:11:50
【问题描述】:

我使用 Django shell_plus 来测试我的模型和视图

但是当我遇到错误时,我会更改代码,然后我必须重新启动我的shell_plus

然后输入我输入的所有命令

有什么方法不需要重启shell,我可以修改代码,然后再次测试命令

【问题讨论】:

    标签: python django shell


    【解决方案1】:

    我个人在这种情况下只是将我的会话从shell_plus 记录到文件中,然后在手动重新加载后从shell_plus 中调用此文件。两者都可以使用 iPython,shell_plus 默认使用它。 (如果您没有安装 iPython,只需 pip install ipython,我认为它应该会自动运行)。

    录制的脚本通常也很适合作为项目的一部分保留,因为它基本上是一个小型集成测试。只需稍加修改,它就可以作为独立脚本在 shell 外部执行,这很方便。

    如果您确实想使用重新加载,我认为这个答案可能会对您有所帮助:

    【讨论】:

      【解决方案2】:

      在做

      import importlib
      importlib.reload(module_you_changed)
      

      在某些情况下有效,但不会重新加载 module_you_changed 导入的所有模块。

      【讨论】:

        猜你喜欢
        • 2013-02-13
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-10-17
        • 2018-03-10
        • 2022-01-26
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多