每当我尝试从 Eclipse 调试 Django 的 manage.py
时,我得到:
pydev debugger: warning: psyco not available for speedups (the debugger will still work correctly, but a bit slower)
pydev debugger: starting
Traceback (most recent call last):
File "/proj/virtualenvs/testing/infocards/manage.py", line 15, in <module>
execute_manager(settings)
File "/proj/virtualenvs/testing/lib/python2.6/site-packages/django/core/management/__init__.py", line 438, in execute_manager
utility.execute()
File "/proj/virtualenvs/testing/lib/python2.6/site-packages/django/core/management/__init__.py", line 379, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "/proj/virtualenvs/testing/lib/python2.6/site-packages/django/core/management/base.py", line 191, in run_from_argv
self.execute(*args, **options.__dict__)
File "/proj/virtualenvs/testing/lib/python2.6/site-packages/django/core/management/base.py", line 220, in execute
output = self.handle(*args, **options)
File "/proj/virtualenvs/testing/lib/python2.6/site-packages/django/core/management/commands/runserver.py", line 67, in handle
self.run(*args, **options)
File "/proj/virtualenvs/testing/lib/python2.6/site-packages/django/core/management/commands/runserver.py", line 76, in run
autoreload.main(self.inner_run, args, options)
File "/proj/virtualenvs/testing/lib/python2.6/site-packages/django/utils/autoreload.py", line 131, in main
reloader(main_func, args, kwargs)
File "/proj/virtualenvs/testing/lib/python2.6/site-packages/django/utils/autoreload.py", line 104, in python_reloader
reloader_thread()
File "/proj/virtualenvs/testing/lib/python2.6/site-packages/django/utils/autoreload.py", line 83, in reloader_thread
ensure_echo_on()
File "/proj/virtualenvs/testing/lib/python2.6/site-packages/django/utils/autoreload.py", line 77, in ensure_echo_on
attr_list = termios.tcgetattr(fd)
termios.error: (22, 'Invalid argument')
Validating models...
从命令行运行 python manage.py runserver
工作正常。
谷歌搜索我发现 termios.error: (22, 'Invalid argument')
错误是因为 python 试图从 stdin 读取但不能从 Eclipse 环境内部读取。
[编辑]:我忘了说我正在运行 PyDev 和最新的 1.3 版 Django。
[编辑]:@Blake,@izhak。我在 Eclipse 中定义了包含在我的 virtualenv 中的 Python(/proj/virtualenvs/testing,您可以从输出中看到)。在命令行中,我使用与激活 virtualenv 相同的 Python 版本。
最佳答案
似乎缺少 --noreload 会导致这种效果。很奇怪。
编辑:起初我以为它是项目的工作目录。
关于python - 无法从 Eclipse 运行/调试 Django 的 manage.py,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5572990/