Реверсия django - вернуть связанное поле в ту же версию
У меня есть две модели:
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 ответ
Решение
Я нашел способ:
Вы должны отменить текущую ревизию объекта, получить связанные объекты и снова отменить ревизию. Как это:
version.revision.revert()
sales = version.object.sales_set.all()
version.revision.revert()