OSX,Python 2.7,pip,virtualenv。多年来一直使用这些没有问题。
我不确定发生了什么变化,但是最近我的环境在完成了一段时间的完美处理后完全破坏了Django。同样的结账在我朋友的电脑上运行正常,设置类似。
我已经尝试过的事情:删除我的venv并使用requirements.txt中的全新安装创建一个新的venv,卸载venv外部的日志并重新安装内部,重新安装pip。
我为任何manage.py命令获得相同的回溯。它似乎与日志记录模块有关:
Traceback (most recent call last):
File "manage.py", line 10, in <module>
execute_from_command_line(sys.argv)
File "/Users/rfong/Dropbox/code/lattis_workspace/lattis_repo/venv/lib/python2. 7/site-packages/django/core/management/__init__.py", line 453, in execute_from_command_line
utility.execute()
File "/Users/rfong/Dropbox/code/lattis_workspace/lattis_repo/venv/lib/python2. 7/site-packages/django/core/management/__init__.py", line 376, in execute
sys.stdout.write(self.main_help_text() + '\n')
File "/Users/rfong/Dropbox/code/lattis_workspace/lattis_repo/venv/lib/python2. 7/site-packages/django/core/management/__init__.py", line 242, in main_help_text
for name, app in six.iteritems(get_commands()):
File "/Users/rfong/Dropbox/code/lattis_workspace/lattis_repo/venv/lib/python2. 7/site-packages/django/core/management/__init__.py", line 109, in get_commands
apps = settings.INSTALLED_APPS
File "/Users/rfong/Dropbox/code/lattis_workspace/lattis_repo/venv/lib/python2. 7/site-packages/django/conf/__init__.py", line 52, in __getattr__
self._setup(name)
File "/Users/rfong/Dropbox/code/lattis_workspace/lattis_repo/venv/lib/python2. 7/site-packages/django/conf/__init__.py", line 48, in _setup
self._configure_logging()
File "/Users/rfong/Dropbox/code/lattis_workspace/lattis_repo/venv/lib/python2. 7/site-packages/django/conf/__init__.py", line 75, in _configure_logging
logging_config_func(DEFAULT_LOGGING)
File "/Users/rfong/Dropbox/code/lattis_workspace/lattis_repo/venv/lib/python2. 7/site-packages/django/utils/dictconfig.py", line 555, in dictConfig
dictConfigClass(config).configure()
File "/Users/rfong/Dropbox/code/lattis_workspace/lattis_repo/venv/lib/python2. 7/site-packages/django/utils/dictconfig.py", line 323, in configure
del logging._handlerList[:]
AttributeError: 'module' object has no attribute '_handlerList'
答案 0 :(得分:5)
您似乎安装了过时的0.4.9.6
版本的日志记录模块,大概是pip
。 python 2.7附带的正确版本为0.5.1.2
,我认为在您的情况下可能位于/Library/Python/2.7/lib/logging
。可以从python svn上传正确的版本。
如果您使用pip,您始终可以找出使用
安装的模块版本$ pip freeze
要确保安装了正确版本的软件包,请使用以下语法:
$ pip install <package>==<version>
这将为您节省大量的痛苦和努力,而且几乎是生产环境的必需品。