首页 文章

看似mysqldb错误的信息,python django

提问于
浏览
0

在latin-1数据库中我有' \222\222\223\225 ',当我尝试从django模型中拉出这个字段时,我得到了 u'\u2019\u2019\u201c\u2022' .

from django.db import connection                                                                                                                                                                                                                                                    
(Pdb)                                                                                                                                                                                                                                                                                  
cursor = connection.cursor()                                                                                                                                                                                                                                                        
(Pdb)                                                                                                                                                                                                                                                                                  
cursor.execute("SELECT Password from campaignusers WHERE UserID=26")                                                                                                                                                                                                             
(Pdb)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        
row = cursor.fetchone()

所以我进入那个并进入

/usr/local/python2.5/lib/python2.5/site-packages/MySQL_python-1.2.2-py2.5-linux-i686.egg/MySQLdb/cursors.py(327)fetchone()->( U '\ u2019 ...... 1C \ U2022',)

我不能再进一步了,因为它是一个鸡蛋,但似乎MySQL python驱动程序将数据解释为不是latin-1 .

任何人都有任何线索发生了什么?

2 回答

  • 1

    稍微浏览一下已经问过的问题就会让你们昨天被问到并回答了问题 .

    顺便说一句,我记不起确切的 Headers ,所以我只是在django'\ 222 \ 222 \ 223 \ 225'上搜索并找到它 . 记住,孩子们,谷歌是你的朋友(tm) .

  • 0

    Django使用UTF-8,除非您将DEFAULT_CHARSET定义为其他内容 . 请注意,定义其他字符集将要求您对此字符集中的所有模板进行编码,此字符集将从此处弹出,如电子邮件编码,站点 Map 和Feed等 . 所以,IMO,你能做的最好的就是去UTF-8,这会让你在Django中省去很多麻烦(内部它是所有的unicode,问题出在你的应用程序的边界上,比如模板和输入) .

相关问题