Если кто-то смущен ответом Бобинса, подумайте:
Поля из модели уже в формате Unicode.
когда у вас есть функция Unicode, подобная этой:
def __unicode__(self):
return "{0}".format(self.field_one)
На самом деле он возвращает строку ASCII (что означает, что он попытается преобразовать field_one в ASCII), если field_one содержит символы вне ASCII, вы получите проблему, как указано выше.
Теперь рассмотрим эту функцию Unicode:
def __unicode__(self):
return self.field_one
Это прекрасно работает, потому что вы возвращаете строку в юникоде напрямую, преобразование не требуется.
Давайте вернемся к первой функции unicode , чтобы она работала, вам просто нужно добавить u
, чтобы сделать ее строкой Unicode
def __unicode__(self):
return u"{0}".format(self.field_one)