2009-11-18 1 views
0

어렵지는 않지만 ... 가장 최근의 세 객체를 데이터베이스 필드에 추가하면됩니다.Django 데이터베이스 쿼리 - 가장 최근의 세 객체 반환

역방향 ID 순서로 쿼리합니다 (최대 세 개의 개체).

Records.objects.order_by(-id)[:3] 
Records.objects.all[:3] 

둥근 하구 실제로 세 물체가 있는지 여부를 확인하는 경우, 절 포함되었다 : 잠시

num_maps = Records.objects.count() 
if (num_maps > 3): # etc... 

및 사용 역방향() 및 필터() ..

하지만 알아낼 수는 없습니다. 내가하는 일 중 아무 것도 올바른 결과를 제공하지 않고 num_maps를 사용하는 것은 꽤 우아하지 않다. 문서에서 많은 기쁨을 얻지 못했습니다. 누구든지 도울 수 있습니까?!

답변

5

모든 당신이 필요합니다입니다

Records.objects.all().order_by('-id')[:3] 

당신은 모든() 먼저 order_by에 통과 order_by 인수가 문자열이어야한다 전에해야합니다. [3]이 3보다 작 으면 깨지지 않기 때문에 실제로이 쿼리를 실행하기 전에 3이 있는지 확인할 필요가 없습니다.

+0

그래, 그 중 하나입니다. :) – Richard