django クエリセットで次の n 個のレコードを取得する方法はありますか?
たとえば、最初の 5 つのレコードを取得した後、次の 5 つのレコードを取得するにはどうすればよいでしょうか? 私のユースケースは、ページに [もっと見る] ボタンがあり、[もっと見る] ボタンがクリックされるたびに (ajax 経由で) 次の 5 つのレコードをロードすることです。
このようなことをしたいと思います
#function that handles ajax
def load_next_five(initial_five)
next_five = initial_five.???
return JsonResponse({'next_five': list(next_five)})
def main_view(request):
initial_five = Car.objects.filter(year__gte=2000)
...
load_next_five 関数についてはどうすればよいでしょうか?
スライスを使用します。開始したい場所を通過する必要があります。
def load_next_five(start)
next_five = Car.objects.filter(year__gte=2000)[start:start+5]
return JsonResponse({'next_five': list(next_five)})
def main_view(request):
initial_five = Car.objects.filter(year__gte=2000)[:5]
裏では、Django はそれをデータベース側の結果を制限する句 (たとえば、LIMIT や OFFSET) に変換します。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加