我有以下内容ListView:
class SongList(generic.ListView):
model = models.Song
template_name = 'videos/song_list.html'
context_object_name = 'song_list'
我在哪里覆盖get_context_data:
def get_context_data(self, **kwargs):
context = super(generic.ListView, self).get_context_data(**kwargs)
现在我想对每首歌曲执行一些操作以便在我的模板上显示它,所以我这样做:
for song in context['song_list']:
song = models.Song.objects.get(title=song)
lyrics_list = models.Song.objects.get(title=song).lyrics_as_list()
import pymorphy2
morph = pymorphy2.MorphAnalyzer()
lyrics_list_lemma = []
for word in set(lyrics_list):
parsed_word = morph.parse(word)[0]
result = {
'word_original': word,
'word_normalized': parsed_word.normal_form,
}
lyrics_list_lemma.append(result)
context['lyrics_lemma'] = lyrics_list_lemma
context['count'] = len([k for d in lyrics_list_lemma for k in d.keys() if k == 'word_normalized'])
return context
lyrics_list_lemma我获得了和的正确值count,但仅针对一首歌曲。我不应该为所有歌曲都得到它,因为它属于循环吗for?
哆啦的时光机
相关分类