python djange输入中文错误的解决办法

  UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-1: ordinal not in range(128)的解决办法。


   Python中有两种字符串,分别是一般的字符串(每个字符用8 bits表示)和Unicode字符串(每个字符用一个或者多个字节表示),它们可以相互转换。从错误提示来看同由于Python遇到了编码问题,也就是说,后台输入的数据在默认情况下是ascii编码的,那么在存入数据库的时候,Python便会报错,即使返回去看,数据库中已经插入了该条信息!

  解决方法:  因为原先写的模型代码中的方法用提 def __str__(self): 这个是旧版本中用的方法,在Django 0.96以后的版本中,应该换成 def __unicode__(self):, 这样就解决了字符串传递时出错的问题,统一编码为Unicode字符串。 

 

posted @ 2013-12-13 14:12  qiumc  阅读(500)  评论(0编辑  收藏  举报