超级不工作模型保存

时间:2014-08-25 01:33:16

标签: python

我有以下代码:

setattr(obj, 'tv_season_number', self.data['tv_season_number'])
super(obj, self).save(*args, **kwargs)

这给了我以下错误:

TypeError: must be type, not TVSeriesMaster

我也尝试过:

setattr(obj, 'tv_season_number', self.data['tv_season_number'])
obj.save()

它给了我另一个错误。我该如何妥善保存?

1 个答案:

答案 0 :(得分:1)

除非您为自己的班级obj命名,否则您的问题是您没有正确地将班级命名为超载。试试这个:

super(TVSeriesMaster, self).save(*args, **kwargs)

在Django中使用super和类的一个例子:

class Blog(models.Model):
    name = models.CharField(max_length=100)
    tagline = models.TextField()

    def save(self, *args, **kwargs):
        do_something()
        super(Blog, self).save(*args, **kwargs) # Call the "real" save() method.
        do_something_else()