У меня есть пользовательская команда управления для импорта данных из одной базы данных и создания экземпляров модели из нее. В основном это:Django UnicodeEncodeError при импорте из db
class Command(BaseCommand):
def handle(self, **kwargs):
cursor = connections['db2'].cursor()
sql = 'SELECT * FROM table'
cursor.execute(sql)
for row in cursor.fetchall():
my_model = MyModel(*row)
my_model.save()
Сначала я импортировал из sqlite в sqlite, и все прошло хорошо. Но когда я переключился на MySQL в качестве основного db, я начал получать UnicodeEncodeError при вызове my_model.save()
. Предостережение заключается в том, что у меня есть символы не-ascii в db (а именно русском), но, как я понимаю, Django преобразует все строки в unicode. И да, оба dbs используют utf-8.