我想在使用django時減少實際的數據庫命中,所以我創建了這個人造示例來概述問題。該模型是這樣的:在django中消除不必要的數據庫命中
class Car(models.Model):
name = models.CharField(max_length=10)
user = models.ForeignKey(User)
在我看來,我想要做這樣的事情:
def cartest(request):
cars = Car._default_manager.filter(user__username__exact='michael')[:5]
first_car_name = cars[0].name
another_car = cars[1]
return HttpResponse(len(connection.queries))
所以我想從數據庫中選擇5個條目,做一些與第一位的,然後做第二件事(記住這是一個人造的例子)。必須有一些方法來做到這一點,而不是兩次點擊數據庫,對嗎?
謝謝, 邁克
啊,似乎是做我想要的,當我迭代'汽車',而不是試圖給它下標。 – 2009-10-17 07:11:57