我使用Python 2.7& Django 1.9。
我设法在基于多边形时缓存空间查询集的结果,但是当基于距离位置的距离时,我无法设置缓存它。
返回的错误是:“TypeError:无法pickle二进制对象”
知道为什么吗?
以下是缓存功能的摘要:
qs = ThePlace.objects.annotate(distn=Distance('lnglat', populatedplacegeom)).filter(distn__lte=D(km=25).m)
cache.set(cacheid, qs, 10000)
有关信息:我在查询集中也有几个prefetch_related和select_related。