У меня есть 2 модели Django - ди-джеи и песни. Я пытаюсь получить наборы всех песен с тем же именем для конкретного ди-джея.Почему Django рассматривает эти два одинаковых запроса как разные?
Это, как я делаю, что
for dj in DJ.objects.all():
song_group_list = []
dj_song_list = Song.objects.filter(artist=dj)
for song in dj_song_list:
song_group = dj_song_list.filter(name=song.name).order_by('song_id')
if len(song_group) > 1:
if song_group not in song_group_list:
song_group_list.append(song_group)
for group in song_group_list:
print group
Это выводит 2 повторяющиеся наборы с теми же результатами QuerySet.
[<Song: Wake Up>, <Song: Wake Up>, <Song: Wake Up>, <Song: Wake Up>, <Song: Wake Up>, <Song: Wake Up>, <Song: Wake Up>, <Song: Wake Up>, <Song: Wake Up>, <Song: Wake Up>, <Song: Wake Up>, <Song: Wake Up>, <Song: Wake Up>, <Song: Wake Up>, <Song: Wake Up>, <Song: Wake Up>, <Song: Wake Up>, <Song: Wake Up>]
[<Song: Wake Up>, <Song: Wake Up>, <Song: Wake Up>, <Song: Wake Up>, <Song: Wake Up>, <Song: Wake Up>, <Song: Wake Up>, <Song: Wake Up>, <Song: Wake Up>, <Song: Wake Up>, <Song: Wake Up>, <Song: Wake Up>, <Song: Wake Up>, <Song: Wake Up>, <Song: Wake Up>, <Song: Wake Up>, <Song: Wake Up>, <Song: Wake Up>]
Почему not in
не в состоянии провести различие между этими 2 querysets?