【问题标题】:Django override save method: to return super().save() or not to return?Django 覆盖保存方法:返回 super().save() 还是不返回?
【发布时间】:2020-08-07 04:08:43
【问题描述】:

我想重写模型保存方法,但我见过两种代码:

1.

def save(self):
    # some code
    return super().save()
def save(self):
    #some code
    super().save()

什么时候不用return,什么时候用return?

【问题讨论】:

标签: django django-models


【解决方案1】:

您不应使用return super().save(*args, **kwargs)。因为 save 方法不会返回 Django 的 models.Model 类中的任何内容。这是对GitHub repository 的引用。所以你应该总是使用:

def save(self, *args, **kwargs):
    #some code
    super().save(*args, **kwargs)
    # some more code

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-11-16
    • 2015-06-09
    • 2020-08-07
    • 2012-06-11
    • 2014-11-21
    • 1970-01-01
    • 2021-04-10
    相关资源
    最近更新 更多