Django reversion -将相关字段恢复到相同的版本



我有两个模型:

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

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

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

所以,当我得到一个旧版本的Plan,里面有旧的信息,我试着为这个旧版本的Plan找到相关的对象,像这样:

version.object_version.object.sales_set.all()

但是我得到了这些相关对象的最新版本。那么,我怎样才能得到旧版本的Sales呢?

我找到了路:

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

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

最新更新