假设我有一个 Django 模型如下:
class Person(models.Model):
first_name = models.CharField(max_length=50)
last_name = models.CharField(max_length=50)
我在某个地方有一个实例 p,我对其进行了一些更改。
p.first_name = 'new first name'
由于某种原因,我希望恢复对此实例所做的所有更改。我能想到的一种恢复方法如下:
p = Person.objects.get(pk=p.pk)
上面的代码取决于模型类名。有没有更简单的独立于模型的方法来做到这一点?
最佳答案
给定一个实例 p,
p = p.__class__._default_manager.get(pk=p.pk)
关于django - 进行一些更改后如何恢复 Django 模型实例?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5846088/