首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >希腊unicode字符django和管理后端

希腊unicode字符django和管理后端
EN

Stack Overflow用户
提问于 2013-12-12 09:35:41
回答 2查看 632关注 0票数 0

我有一个有字段属性的模范老师。此属性由某些预定义选项填充。

model.py

代码语言:javascript
复制
#-*-coding" utf-8 -*-
field_options=[
    ('Greek letters', 'Greek letters'),
    ('Greek letters', 'Greek letters'),
    ('Greek letters', 'Greek letters'),
    ('Greek letters', 'Greek letters'),
]

class Teacher(models.Model):
    #fields here.....
    field = models.CharField(choices=field_options, max_length=20)

我的意思是教师可以是数学家、物理学家等等,但我储存了这些领域的希腊语。当我去django的管理后端存储一个老师时,我用希腊语字母来表示他的last_name,他的地址等等,我为他的字段选择了一个选项,但是当我点击save时,它给了我一个错误,即字段的值不是一个有效的选择,给出了字段的unicode表示的值,就像

代码语言:javascript
复制
u'\u039c\u0391\u0398.... etc

为什么它保存其他字段(名字、姓氏等)上的其他希腊字母,而不保存特定的字母?我能做点什么来解决这个问题吗?

编辑:控制台给我以下错误。

代码语言:javascript
复制
/usr/local/lib/python2-7/dist-packages/django/db/models/fields/__init__.py:194:
UnicodeWarning:Unicode equal comparison failed to convert both arguments to Unicode -interpreting them as being unequal
    elif value == option_key

还有一个想法.我在syncdb.First之后改变了它,它只是一个没有选择的CharField,我手动添加了它(而不是南方).Could,这是错误吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-12-12 09:41:11

尝试将u添加到元组中的字符串中:

代码语言:javascript
复制
(u'Greek letters', u'Greek letters'),
#('Greek letters', 'Greek letters'),

并检查元组中的第一个元素max_length=20 .

票数 2
EN

Stack Overflow用户

发布于 2013-12-12 09:48:00

unicode的一个一般性补充及其“问题”:

在使用Python2.7时,有时会遇到unicode方面的问题。我强烈建议花30分钟讨论这个问题,以避免未来的大部分问题。看一看下面的谈话:

实用的Unicode,还是,我该如何止痛?

http://pyvideo.org/video/948/

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20539709

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档