Python django 2中的Unicode
我习惯于使用print来打印我在_unicode__中定义的django模型对象,但它似乎不再有效:Python django 2中的Unicode,python,django,Python,Django,我习惯于使用print来打印我在_unicode__中定义的django模型对象,但它似乎不再有效: def __unicode__(self): """GMT-03:00 Palmer""" return "GMT-%s %s" % (self.offset_time, self.name) >>> t=Timezone.objects.all()[0] >>> print (t) Timezone object (Andorra)
def __unicode__(self):
"""GMT-03:00 Palmer"""
return "GMT-%s %s" % (self.offset_time, self.name)
>>> t=Timezone.objects.all()[0]
>>> print (t)
Timezone object (Andorra)
>>> t.__unicode__()
'GMT-02:00 Andorra'
我将如何调用print方法(就像之前在django中所做的那样)来返回unicode方法?根据django的说法,您应该定义模型的_str___________________方法来获取它的字符串表示形式。尽管如此,在Django的旧版本中并使用Python2,您过去常常通过定义_unicode_;来实现这一点 根据Django的说法,您应该定义模型的_str_________________________________。尽管如此,在Django的旧版本中并使用Python2,您过去常常通过定义_unicode_;来实现这一点 \uuuuUnicode\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu
如果您使用的是Python3,那么应该实现_str__,实现此方法可使您拥有模型的可读表示形式。\uuuuuUnicode\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu
如果您使用的是Python3,那么应该实现_str__,实现此方法可使您获得模型的可读表示形式。这里发生的事情是打印需要对象的字符串表示形式。首先寻找一个_str__________________________________________ 如果没有_str___________________________________________。或者在django模型对象的情况下,使用django.db.models.model.\uu________________________________
在django<版本2.0中,在模板呈现中使用了_unicode__)方法而不是_str__。原因是Python2的兼容性。在django的当前版本中,请改用_str__。这里发生的事情是打印需要对象的字符串表示。首先寻找一个_str__________________________________________ 如果没有_str___________________________________________。或者在django模型对象的情况下,使用django.db.models.model.\uu________________________________
在django<版本2.0中,在模板呈现中使用了_unicode__)方法而不是_str__。原因是Python2的兼容性。在django的当前版本中,请改用_str__。您可以使用printunicodet。但是请注意,在Python-3.x中,unicode。。已被删除,因为str现在支持unicode字符串。@WillemVanOnsem明白了-感谢您对这些django问题的持续帮助@DavidL,你用的是什么版本的Python和Django?你可以用printunicodet。但是请注意,在Python-3.x中,unicode。。已被删除,因为str现在支持unicode字符串。@WillemVanOnsem明白了-感谢您对这些django问题的持续帮助@DavidL,你用的是什么版本的Python和Django?