如何在 Django Reversions 中的给定时间有效地检索属性的值?

How to efficiently retrieve value of an attribute at a given time in Django Reversions?

我目前正在使用 django-reversion 来跟踪一个模型 Account,它有一个字段 total_spent

加班每当帐户花钱时,此字段都会更新。我的目标是检索 X 和 Y 之间 total_spent 的值,它们都是日期时间实例。

我怎样才能高效地做到这一点?

您需要知道这两种情况下的值。为此,您必须在每次更新时存储 total_spent

你会有这样的事情:假设你有一个 Django 模型和两个时间字段,得到它们经过的时间差:

class SomeModel(models.Model):
    start_time = models.DateTimeField(blank=True, null=True)
    end_time = models.DateTimeField(blank=True, null=True)

    @property
    def total_spent(self):
        return self.end_time - self.start_time

然后使用 total_spent 作为该模型的另一个 属性。