Ale*_*.P. 3 python django unicode
我在通过管理站点向sqlite数据库添加新记录时遇到了Unicode字符串问题.
class Translation(BaseModel):
.....
translation = models.CharField(max_length=100)
Run Code Online (Sandbox Code Playgroud)
当我尝试插入像'été'这样的单词时会发生错误:
**UnicodeEncodeError: 'ascii' codec can't encode character u'\xe9' in position 0: ordinal not in range(128)**
Run Code Online (Sandbox Code Playgroud)
更新:添加了回溯:http://pastebin.com/yLYFNDGB
我找到了解决方案.实际上,问题不在于Django或sqlite.问题出在unicode()方法上.
以前是:
def __unicode__(self):
return "{} ({})".format(self.translation, self.word.lang.abbr)
Run Code Online (Sandbox Code Playgroud)
经过明显的修复后,问题就消失了:
def __unicode__(self):
return u"{} ({})".format(self.translation, self.word.lang.abbr)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1981 次 |
| 最近记录: |