Django 1.11, Python 3.5, ОС Windows
У меня есть модель Django с BinaryField.Когда я сохраняю экземпляр модели в базе данных, Django выводит сообщение об ошибке, подобное этому:
UnicodeEncodeError: 'charmap' codec can't encode character '\ufffd' in position 216: character maps to <undefined>
Последняя строка трассировки указывает, что ошибка возникает в django.db.backends.utils.py
-добавил комментарий к ошибочной строке:
class CursorDebugWrapper(CursorWrapper):
# XXX callproc isn't instrumented at this time.
def execute(self, sql, params=None):
start = time()
try:
return super(CursorDebugWrapper, self).execute(sql, params)
finally:
stop = time()
duration = stop - start
sql = self.db.ops.last_executed_query(self.cursor, sql, params)
self.db.queries_log.append({
'sql': sql,
'time': "%.3f" % duration,
})
##### Error is reported from the logger.debug statement
logger.debug(
'(%.3f) %s; args=%s', duration, sql, params,
extra={'duration': duration, 'sql': sql, 'params': params}
)
Так что я думаю, что происходит, когда Django пытается распечатать оператор вставки SQL, он попадает в непечатаемый символ Unicode и выдает ошибку.Я не хочу отключать ведение журнала отладки Django во время разработки (это, конечно, отключено на производстве).Есть ли способ обойти эту проблему?