from myapp.models import MyModel
from cPickle import *
tmp = MyModel.objects.all()[:1]
print(loads(dumps(t, -1)) == t)
#Output is "False"
在我的情况下,腌制查询结果与未腌制不同。我已经在这里读到: https ://docs.djangoproject.com/en/dev/ref/models/querysets/#pickling-querysets 实际上允许这样的操作。那么 - 我做错了什么?
upd #1:尝试了 cPickle 和常规 Pickle - 两者都得到了“假”
upd #2:可能的解决方案 - 使用 . 将 QuerySet 转换为 Python 列表list()
。在阅读这些内容时发现它:https ://docs.djangoproject.com/en/dev/ref/models/querysets/#when-querysets-are-evaluated