/ / Django paginatorをクエリパフォーマンスの目的で使うには? - django、django-queryset

クエリパフォーマンス目的でDjangoページャーを使用するには? - django、django-queryset

私はただ読んだ ドクター Djangoのページ付けについて。

例から、それはこのように使用される必要があるようです:

  1. すべてのオブジェクトを読み込む
  2. ページ間でオブジェクトを分割するためのPaginatorオブジェクトを作成します。

それでは、100000エントリを返す非常に長いクエリでページネーションを使用したくないとしましょう。 一度にすべての100000個のオブジェクトをロードするには非常に長い時間がかかります。

私がやりたいのは、1ページに10個のオブジェクトしかロードしないことです。Djangoのページ番号を使用してこれを行う方法はありますか。

ありがとう。

回答:

回答№1の場合は3

いいえ、Paginatorはすべてのオブジェクトをメモリにロードしません。クエリセットをPaginatorに渡すとそれを使います。 .count() オブジェクト数を取得します。