1
我對Django來說很新。manage.py syncdb錯誤,而Django模型使用非ascii verbose_name
我要顯示我的模型的名稱在中國,所以我在元級我的模型中使用verbose_name,代碼如下:
#this models.py file is encoded in unicode
class TS_zone(models.Model):
index = models.IntegerField()
zone_name = models.CharField(max_length=50);
zone_icon = models.ImageField(upload_to='zone_icon', null=True)
is_active = models.NullBooleanField(blank=True, null=True)
status = models.CharField(max_length=7,choices=SETTING_STATUS_CHOICES)
class Meta:
ordering = ('index',)
verbose_name = u'你好嗎?'
verbose_name_plural = u'你們都好嗎?'
def __unicode__(self):
return self.zone_name
但是當我運行manage.py執行syncdb,以下錯誤拋出:
File "E:\pythonroot\myproject\..\myproject\myapp\models.py", line 19
SyntaxError: Non-ASCII character '\xe4' in file
E:\pythonroot\myproject\..\myproject\myapp\models.py on line 19, but no encoding declared; see http://www.python.org/peps/pep-0263.html for details
看來manage.py不能處理我的verbose_name中的非ascii字符。我做錯了什麼?
謝謝。
它工作正常後,我添加了「#編碼:utf-8」,非常感謝。 – 2010-09-07 06:34:52
+1編碼應該都是有的吧。 – 2010-09-07 07:47:03
沒有'編碼在Unicode'這樣的事情。 Unicode是*不是編碼。 – 2010-09-07 07:59:53