對Django來說是新手,所以很可能我做的這一切都是錯誤的。Django RelatedManager - 如何將兩個查詢集相互關聯?
我有一個Album
類和一個Song
類。 Album
可以有許多Song
。到目前爲止這麼簡單。
在我的專輯列表下面,我想要他們的歌曲列表。不是每個專輯都有一首歌曲(不要問),所以我不想只查詢Song
模型並將其加入Album
。
我看了RelatedManager.add()但這並不做什麼,我希望:
a = Album.objects.order_by('-release_date')[:5]
s = Song.objects.all()
a.release_set.add(s)
我得到這個錯誤:
'QuerySet' object has no attribute 'release_set'
我這樣做對嗎?據我所知,我選擇了幾個Album
s,選擇了所有的Song
s,然後試圖將兩個藏品加在一起,他們共同擁有album_id
。
有沒有人知道更好的方法來做到這一點?
謝謝, 馬特
AFAIK a必須是一個Album實例而不是QuerySet/list獲取一個專輯然後添加到它的歌曲。 – Jerzyk 2011-04-02 15:36:48