Я обновился до PyCharm 4.0.5 вчера, и с тех пор он маркировал какой-то совершенно правильный код как ошибку. В основном код просто перебирает отношения ManyToMany. Код показан ниже.
songs = []
for album in order.album_products.all():
album_songs = Song.objects.filter(album__exact=album.album_product.id)
if not album_songs:
for song in album_songs:
songs.append(song)
Линия, показывающая ошибку, следующая:
for album in order.album_products.all():
и отображается следующая ошибка:
Call 'all' directly on 'many-to-many with intermediate'. method 'all' can't be used with many-to-many relations if intermediate model is used.
Я в тупике. Этот код отлично работал в Django, насколько я помню. Я использую Django с версии 1.0 или 1.1 и всегда повторяю отношения ManyToMany, используя этот метод. Также, глядя на ответы Stackoverflow, он показывает тот же код, что и многие другие люди.
Есть ли у кого-нибудь какие-либо предложения?