我正在尝试使用原始查询集实现Django的内置分页功能。我研究了这个问题,答案是我需要将我的设置作为列表。像这样:
paginator = Paginator((list(set)),10)
问题是我仍然收到“RawQuerySet没有len()操作”错误,这让我相信我错过了什么。关于如何实现这种变化的分页,我有几个问题。
在我的html模板中,我有围绕我的对象迭代的标准分页标记。实现建议的修复是否不仅仅涉及将上述代码行添加到我的views.py?
views.py
refg = RefGene.objects.raw(qrefg)
paginator = Paginator(refg, 100) # Show 100 contacts per page
paginator._count = len(list(refg))
# using django's generated forms
c = RequestContext(request, {
"refg": refg,
...
})
return HttpResponse(t.render(c))
html模板
{% autopaginate refg %}
{% for r in refg %}
<tr>
<td>{{ r.data}}</td>
<td>{{ r.loc}}</td>
</tr>
{% endfor %}
{% paginate %}