Djangoのpaginatorモジュールの仕組みと最適化方法について質問があります。私はインターネット上のさまざまなAPIから得た情報から約300項目のリストを持っています。私はDjangoのpaginatorモジュールを使用して、訪問者のリストを一度に10項目ずつ表示しています。ページネーションは私が望むだけでは機能しません。ペイジネータは、ページが変更されるたびに表示する必要がある10個を引き出す前に、300個のアイテムすべてを取得しなければならないようです。たとえば、30ページがある場合、ページ2に行くと、私のウェブサイトにAPIを再度照会し、すべての情報をリストに入れてから、ビジターのブラウザが要求する10個の情報にアクセスする必要があります。私は、各ページのターンで既に持っているのと同じ情報のためにAPIを照会し続けたくありません。Djangoのpaginatorモジュールの最適化方法
現在のところ、私のビューにはget要求を見て、クエリに基づいて情報をAPIに問い合わせる機能があります。次に、すべての情報をリストに入れ、それをテンプレートファイルに渡します。そのため、誰かがページをめくるたびにこの関数が常にロードされ、結果的にAPIのクエリが実行されます。
これはどのように修正する必要がありますか?
ありがとうございました。
説明を追加するだけで、データベースからDjango ORMを介してアイテムを取得する場合、paginatorは必要なアイテムだけを正しく照会し、合計を取得するだけのカウントを行います。しかし、他の場所からデータを取得している場合は、実際にすべてを取得する必要があります。 –