Как я могу решить UnicodeDecodeError в Django? - PullRequest
1 голос
/ 17 марта 2012

Я получаю эту ошибку в Django:

 UnicodeDecodeError at /category/list/

 'utf8' codec can't decode byte 0xf5 in position 7: invalid start byte

 Request Method:    GET
 Request URL: ...
 Django Version:    1.3.1
 Exception Type:    UnicodeDecodeError
 Exception Value:   

 'utf8' codec can't decode byte 0xf5 in position 7: invalid start byte

 Exception Location:                       /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/json/encoder.py in iterencode, line 264
 ...

Я должен сохранить турецкие символы в базе данных. Как я могу исправить эту ошибку?

Ответы [ 3 ]

4 голосов
/ 17 марта 2012

Начальный байт 0xf5 будет указывать начало 4-символьной кодировки UTF-8. Одна сильная возможность состоит в том, что ввод не UTF-8 вообще, а ISO-8859-9 , турецкая кодировка ISO. На этой кодовой странице 0xf5 - это строчная буква o с тильдой или õ.

1 голос
/ 17 марта 2012

Ниже код решил мою проблему. Спасибо.

if isinstance(encObject, unicode):
                           myStr = encObject.encode('utf-8')   
0 голосов
/ 17 марта 2012

http://www.fileformat.info/info/unicode/char/f5/index.htm

это тильда

попробуй

some_string.decode('latin1','replace')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...