解决这个简单问题的好习惯是什么?
def __unicode__(self):
return unicode(self.typePlace + " " + self.name)
TypeError:+的不支持的操作数类型:'TipoLugar'和'str'
答案 0 :(得分:7)
据推测,typePlace
本身就是一个拥有自己的__str__()
和/或__unicode__()
函数的对象(如果不是,并且它是一个自定义类,那么你应该添加这些方法) 。因此,在使用之前将typePlace
强制转换为unicode字符串:
return unicode(unicode(self.typePlace) + " " + self.name)
答案 1 :(得分:1)
使用字符串格式而不是合成,这样既有效又可以为你的元素字符串化:
return u"%s %s" % (self.typePlace, self.name)