Django Manage.py 不适用于 IPython

发布于 2024-09-10 22:12:26 字数 487 浏览 8 评论 0原文

我使用的是 MacOSX Snow Leopard,并且使用的是通过 macports 安装的 python 2.6.5。我在 virtualenv 中。 安装 IPython 后,我无法运行 python manage.py shell,但我可以独立运行 IPython。

我发现以下行是导致问题的原因:

(status, result) = commands.getstatusoutput("otool -L %s | grep libedit" % _rl.__file__ )

发生这种情况是因为由于一个奇怪的原因,当我启动 python manage.py shell 时,方法 getstatusoutput 不可用,但是当我启动 ipython 时它就可用。在这两种情况下我都可以导入命令模块。 我尝试在两者执行期间查看 sys.path,但没有任何区别。

I am on MacOSX Snow Leopard and I'm using python 2.6.5 installed with macports. I'm inside a virtualenv.
I can't run python manage.py shell after installing IPython but I can run IPython standalone.

I figured out that the following line is what causes the issue:

(status, result) = commands.getstatusoutput("otool -L %s | grep libedit" % _rl.__file__ )

This happens because for a strange reason, the method getstatusoutput is not available when i launch python manage.py shell but it's available when I launch ipython. I can import the commands module in both cases.
I tried looking at the sys.path during the execution of both, but there are no differences.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

十年不长 2024-09-17 22:12:26

它们是相同的命令吗?在每个命令中尝试打印命令.__file__。您可能会发现您的项目有一个名为“commands”的模块,它隐藏了 stdlib 模块。

Are they the same commands? Try print commands.__file__ in each. You may find that your project has a module called "commands" which shadows the stdlib module.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文