全球名称' DataFile'没有定义

时间:2018-02-01 08:59:22

标签: django django-models

class PageImages(models.Model):
page  = models.ForeignKey(Pages, on_delete = models.CASCADE)
data  = models.FileField(blank=True)
image = models.CharField(max_length=100)
count = models.IntegerField(default = 10)
def __str__(self):
    return self.image

def save(self, *args, **kwargs):
    super(DataFile, self).save(*args, **kwargs)
    filename = self.data.url

从django-admin提交表单时出错。例外全球名称' DataFile'未定义

2 个答案:

答案 0 :(得分:2)

super()函数的第一个参数是class。您需要将当前类传递给它:

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

同样在python3中,您可以不加参数使用它:

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

答案 1 :(得分:1)

对于类调用超类方法应该使用super(type, obj)

  

类型:此处类的类型 - > PageImages
      obj :您可以使用self