命令:
% ./manage.py dumpdata
输出:
CommandError: Unable to serialize database: cannot import name simplejson
zc.buildout配置为在app目录中安装simplejson。 simplejson也出现在我的自定义Python目录/ usr / local / python中。
感谢您的帮助!
堆栈追踪:
% ./manage.py dumpdata --traceback
Traceback (most recent call last):
File "./manage.py", line 25, in <module>
sys.exit(djangorecipe.manage.main('project.settings.settings_dev'))
File "/opt/project/eggs/djangorecipe-1.11-py2.7.egg/djangorecipe/manage.py", line 9, in main
management.execute_from_command_line(sys.argv)
File "/opt/project/eggs/Django-1.8.2-py2.7.egg/django/core/management/__init__.py", line 338, in execute_from_command_line
utility.execute()
File "/opt/project/eggs/Django-1.8.2-py2.7.egg/django/core/management/__init__.py", line 330, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "/opt/project/eggs/Django-1.8.2-py2.7.egg/django/core/management/base.py", line 390, in run_from_argv
self.execute(*args, **cmd_options)
File "/opt/project/eggs/Django-1.8.2-py2.7.egg/django/core/management/base.py", line 441, in execute
output = self.handle(*args, **options)
File "/opt/project/eggs/Django-1.8.2-py2.7.egg/django/core/management/commands/dumpdata.py", line 162, in handle
stream=stream or self.stdout)
File "/opt/project/eggs/Django-1.8.2-py2.7.egg/django/core/serializers/__init__.py", line 128, in serialize
s = get_serializer(format)()
File "/opt/project/eggs/Django-1.8.2-py2.7.egg/django/core/serializers/__init__.py", line 51, in __call__
raise self.exception
ImportError: cannot import name simplejson
答案 0 :(得分:7)
django.utils.simplejson
,不要与django 1.7中的simplejson模块deprecated混淆,我们现在依赖于python的内置json。
如果您正在运行旧版第三方代码,或者某些难以更改的代码,请执行此操作
try:
import django.utils.simplejson
except:
import json as simplejson
如果您正在编写新代码,请将其写为向后兼容性:
try:
import json
except:
import django.utils.simplejson as json
在你的情况下,它是manage.py抛出错误还是代码中的其他地方的错误?你可以发布堆栈跟踪吗?