python manage.py dumpdata Unable to serialize database

4.3k Views Asked by At

I am trying to run the command python manage.py dumpdata > data.json

However, I receive such a traceback:

CommandError: Unable to serialize database: 'charmap' codec can't encode characters in position 1-4: character maps to <undefined>
Exception ignored in: <generator object cursor_iter at 0x0000020E11353820>
Traceback (most recent call last):
  File "C:\Users\Illia\Desktop\MyDjangoStuff\greatkart\venv\lib\site-packages\django\db\models\sql\compiler.py", line 1625, in cursor_iter
    cursor.close()
sqlite3.ProgrammingError: Cannot operate on a closed database.


How to solve this issue?

3

There are 3 best solutions below

0
illymarev On BEST ANSWER

Running set PYTHONIOENCODING=utf-8 before python manage.py dumpdata > data.json has solved the issue.

3
Richard Max On

I couldn't get the soloution above to work, however i did get this to work;

https://pypi.org/project/django-dump-load-utf8/

I installed it and used its command for dumping data and it worked, hope this helps anybody else! I think my problem was that my database had Norwegian letters in it "ÆØÅ"

0
Tony On

if this doesn't work, and if you are windows, try

python -Xutf8 ./manage.py dumpdata > data.json