良好做法__unicode __(个体经营)

时间:2012-07-29 20:05:22

标签: python string unicode

解决这个简单问题的好习惯是什么?

def __unicode__(self):
    return unicode(self.typePlace + " " + self.name)

TypeError:+的不支持的操作数类型:'TipoLugar'和'str'

2 个答案:

答案 0 :(得分:7)

据推测,typePlace本身就是一个拥有自己的__str__()和/或__unicode__()函数的对象(如果不是,并且它是一个自定义类,那么你应该添加这些方法) 。因此,在使用之前将typePlace强制转换为unicode字符串:

return unicode(unicode(self.typePlace) + " " + self.name)

答案 1 :(得分:1)

使用字符串格式而不是合成,这样既有效又可以为你的元素字符串化:

return u"%s %s" % (self.typePlace, self.name)