我在 Django 中运行以下查询以传递到模板中
release_list = Releases.objects.filter(id=release_id).values('all_artists','label_no_country','id','title','genre')
context_dict['releases'] = release_list
然后我想将 genre
数据传递到 View 中的另一个查询中,例如
genre_list = Releases.objects.filter(genre=genre).values()
context_dict['genre_list'] = genre_list
我如何访问第一个查询中的 genre
数据?
最佳答案
事情是
release_list = Releases.objects.filter(...).values('genre', ...)
将表现得像一个包含您要求的键的对象列表,因此您可以获得许多 genre
值,而不是一个
如果这就是你想要的
for release in release_list:
genre = release['genre']
genre_list = Releases.objects.filter(genre=genre).values()
或者您可以从中提取所有 genre
值
genres = [release['genre'] for release in release_list]
然后你可以,例如像这样使用它
genre_list = Releases.objects.filter(genre__in=genres)
或者您可以传递对象而不是值,它可以像这样工作:
release = Releases.objects.get(...)
SomeModel.objects.filter(genre=release.genre)
关于python - 在 View 中访问 context_dict,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32437870/