1

生のクエリ セットを使用して、Django の組み込みのページネーション機能を実装しようとしています。私はこの問題を調査しましたが、答えは、セットをリストとしてキャストする必要があるということです。このようなもの:

ページネーター = ページネーター((リスト(セット)), 10)

問題は、「RawQuerySet には len() 操作がありません」というエラーがまだ表示されているため、何かが不足していると思われることです。この変更でページネーションを実装する方法についていくつか質問があります。

私の HTML テンプレートには、オブジェクトの繰り返しを囲む標準のページネーション タグがあります。提案された修正を実装するには、上記のコード行を views.py に追加するだけではありませんか?

ビュー.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 %}
4

0 に答える 0