Django - QuerySet校验和

时间:2012-07-26 08:35:40

标签: python django django-queryset checksum

我有一个像

这样的查询集
ses = Session.objects.all()

我想从中获取校验和(以检查是否有变化) 通过更改我的意思是创建/删除/更新的行。

我想象:

from django.core import serializers
new_chksum = serializers.serialize("json", ses).__hash__()

知道查询集中是否有更改是一种好方法吗?

1 个答案:

答案 0 :(得分:1)

所以这个问题可能非常复杂 - 如果你只想知道特定表中是否有任何行被触及(例如:我上次检查时有任何会话改变了)。例如,您可以将一些版本ID存储在另一个表中,每次更改Session模型的实例时,此值都会增加。

要进行增量,您可能需要使用数据库触发器和序列。