我正在尝试通过管理员保存模型,但我不断收到此错误unsupported operand type(s) for +: 'DeferredAttribute' and 'str'".我想返回模型的字符串表示。这是我尝试过的:def __str__(self): return str(self.album_name + "" + self.artist)我的型号:class Album(models.Model): album_name = models.CharField(max_length=250,) album_logo = models.FilePathField(path='music/static/music/song_logo', null=True, blank=True, recursive=True) artist = models.CharField(max_length=150) primaryid = models.AutoField(primary_key=True, null=False) @classmethod def __str__(self): return self.album_name + " " + self.artist例如,我想得到像“山顶”这样的东西
2 回答

明月笑刀无情
TA贡献1828条经验 获得超4个赞
您需要@classmethod
从模型中删除装饰器,因为它不应该如此。
此外,self.artist
就是 CharField
如果试图通过在使用下面的语法来连接它models.py
的__str__()
方法。
@classmethod def __str__(self): return "{0} {1}".format(self.album_name,self.artist)
添加回答
举报
0/150
提交
取消