django reversion - 将相关字段恢复为相同版本

时间:2014-07-10 14:12:19

标签: python django django-models django-reversion

我有两种模式:

class Plan(models.Model):
    ...

class Sales(models.Model):
    plan = models.ForeignKey(Plan)

我在django-reversion中注册了这些模型:

reversion.register(Plan, follow=['sales_set'])
reversion.register(Sales)

所以,当我得到一个包含旧信息的旧版Plan时,我试图获得这个旧版Plan的相关对象:

version.object_version.object.sales_set.all()

但是我得到了这些相关对象的最新版本。 那么,我如何获得旧版本的销售?

1 个答案:

答案 0 :(得分:0)

我找到了方法:

您应该还原当前版本的对象,获取相关对象并再次还原修订版本。像这样:

version.revision.revert()
sales = version.object.sales_set.all()
version.revision.revert()