0

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

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

类型错误:+ 不支持的操作数类型:“TipoLugar”和“str”

4

2 回答 2

7

大概typePlace它本身就是一个具有自己__str__()和/或__unicode__()功能的对象(如果不是,并且它是一个自定义类,那么您应该添加这些方法)。因此,typePlace在使用前转换为 unicode 字符串:

return unicode(unicode(self.typePlace) + " " + self.name)
于 2012-07-29T20:07:59.147 回答
1

使用字符串格式而不是组合,这既更有效,也将为您字符串化您的元素:

return u"%s %s" % (self.typePlace, self.name)
于 2012-07-29T21:57:16.993 回答