首页 > 解决方案 > Django manage.py dumpdata 返回错误

问题描述

你好呀!我有一个 Windows Home 10 (rus)、Python 3.7、Django 3.1、Postgresql 12。执行命令 manage.py dumpdata 时返回错误。

python manage.py dumpdata --traceback > db.json

Traceback (most recent call last):

  File "manage.py", line 24, in <module>
    execute_from_command_line(sys.argv)

  File "C:\Users\User\AppData\Local\Programs\Python\Python37\Lib\site-packages\django\core\management\__init__.py", line 401, in execute_from_command_line
    utility.execute()

  File "C:\Users\User\AppData\Local\Programs\Python\Python37\Lib\site-packages\django\core\management\__init__.py", line 395, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)

  File "C:\Users\User\AppData\Local\Programs\Python\Python37\Lib\site-packages\django\core\management\base.py", line 330, in run_from_argv
    self.execute(*args, **cmd_options)

  File "C:\Users\User\AppData\Local\Programs\Python\Python37\Lib\site-packages\django\core\management\base.py", line 371, in execute
    output = self.handle(*args, **options)

  File "C:\Users\User\AppData\Local\Programs\Python\Python37\Lib\site-packages\django\core\management\commands\dumpdata.py", line 195, in handle
    object_count=object_count,

  File "C:\Users\User\AppData\Local\Programs\Python\Python37\Lib\site-packages\django\core\serializers\__init__.py", line 128, in serialize
    s.serialize(queryset, **options)

  File "C:\Users\User\AppData\Local\Programs\Python\Python37\Lib\site-packages\django\core\serializers\base.py", line 115, in serialize
    self.end_object(obj)

  File "C:\Users\User\AppData\Local\Programs\Python\Python37\Lib\site-packages\django\core\serializers\json.py", line 54, in end_object
    json.dump(self.get_dump_object(obj), self.stream, **self.json_kwargs)
  File C:\Users\User\AppData\Local\Programs\Python\Python37\Lib\json\__init__.py", line 180, in dump
    fp.write(chunk)

  File "C:\Users\User\AppData\Local\Programs\Python\Python37\Lib\site-packages\django\core\management\base.py", line 147, in write
    self._out.write(style_func(msg))

  File "C:\Users\User\AppData\Local\Programs\Python\Python37\Lib\encodings\cp1252.py", line 19, in encode
    return codecs.charmap_encode(input,self.errors,encoding_table)[0]
UnicodeEncodeError: 'charmap' codec can't encode character '\xe9' in position 6: character maps to undefined

代码 '\se9' 是带有拉丁重音的 e - é(我的数据库存储包含英语、法语和俄语单词的字符串。)

标签: djangodumpdata

解决方案


推荐阅读