2009-10-17 86 views
3

我已經看了很多關於1.1的聚合的討論,但我不知道如何使用它來執行一個簡單的組。如何在Django 1.1中執行「Group By」查詢?

我想用Django的sitemap框架來創建一個sitemap.xml文件,Google可以抓取它來查找我網站的所有頁面。目前,我正在將所有對象都傳遞給對象,如Model.objects.all() - 然而,真正重要的是每個名稱只有1個被傳遞。可能有5-10個具有相同名稱的模型實例,但我只想傳遞一個以避免重複。

如果我做這樣的事情:

Model.objects.values('name').annotate(Count('name')) 

它給我我想要的,但當時我沒有檢索從模型中的所有字段 - 創建的站點地圖中的代碼將被強制重新 - 爲每個模型創建鏈接。那麼如何在檢索模型的所有字段時按名稱對其進行分組?

+0

重複:。http://stackoverflow.com/questions/327807/django-equivalent-for-count -and基團通過 – 2009-10-17 12:10:04

回答

1

Django模型被延遲加載。如果你的代碼遍歷你的模型關係,就好像站點地圖一樣,這將是相同的開銷。模型字段本質上是代理,直到您請求相關模型。

1

可能不一樣會幫助你嗎?

Model.objects.values( '姓名')中的所有()不同()