0

我在 django 的模型表单中使用 utf-8 字符时遇到问题。我在模型中有这个代码:

class Student (models.Model):
    imie = models.CharField(verbose_name=u'Imię', max_length=40)
    nazwisko = models.CharField(max_length=40)

(...)

def __unicode__(self):
    return u'%s %s'(self.imie, self.nazwisko)

当我尝试将其保存在编辑器中并运行 runserver 命令时,服务器发送 Validating models... 消息并挂起,没有任何错误,并且我无法刷新页面导致服务器无法启动。当我在 verbose_name='Imie' 中插入普通(非 unicode)时,一切正常。我错过了什么?

4

2 回答 2

1

通过在文件顶部写入以下内容将文件编码设置为 UTF-8。

# coding=utf8

然后在字符串前添加一个小写字母 u。

verbose_name=u'Imię'

有关PEP 263中 Python 编码的更多信息。

于 2012-12-25T00:16:16.807 回答
0

您忘记使用unicode.

    imie = models.CharField(verbose_name=u'Imię', max_length=40)
于 2012-12-25T00:05:25.753 回答