0

我正在寻求制作一个最近的历史记录框,显示模型的最后 3 次更改。我知道可以打电话model.history.most_recent(),但我需要的是第二和第三最近的项目。如何访问这些模型?此外,如何循环通过这个新模型实例来查看已经发生的变化?

如果有更好的应用程序可以使用,请告诉我。

文档:https ://django-simple-history.readthedocs.org/en/latest/advanced.html#locating-past-model-instance

4

1 回答 1

1

由于历史看起来像一个列表:

model.history.all()[:-3]

应该得到最后 3 个,但看起来它使用了一个不支持负索引的迭代器。你可以使用类似的东西:

last3 = []
for h in model.history.all:
   if len(last3) > 2:
       del last3[0]
   last3.append[h]

但您可能希望按日期查看以限制对最近的更改。

于 2013-09-29T08:13:39.557 回答