【发布时间】:2014-06-29 01:43:36
【问题描述】:
在 Django 1.6 中,我有一个模型存储在我的数据库中,我正在查询它以获取一些结果。然而,由于结果有时可能足以填满一页,我正在尝试严格按照这篇文章的框架实现分页系统:https://stackoverflow.com/a/18106904/178728。
现在request.session 中的问题是我需要存储我的查询集而不仅仅是普通值。然而,这会产生各种问题,因为 Django 抱怨我的查询集不是 json 可序列化的。
到目前为止,我已经尝试过:
1) request.session['data'] = myQueryset # Fails
2) request.session['data'] = serializers.serialize('json', myQueryset)
# succeeds at first but fails in deserialization as
# I can't reassemble the original queryset
无论如何,我的问题是:存储然后检索我的查询集的最简单方法是什么?
请注意,当用户使用 POST 请求搜索数据库时,我需要存储查询集,然后通过 GET 检索结果以在分页器中使用。
提前致谢。
【问题讨论】:
-
@zymud 因为这个:stackoverflow.com/a/2266950/178728
-
@zymud 加上
POST仅在用户第一次提交其表单时出现,这是我唯一一次可以通过POST检索值。然而,分页通过GET工作,这意味着我需要将用户的搜索存储在某处。
标签: python json django pagination django-queryset