【发布时间】:2014-03-19 21:55:07
【问题描述】:
我有以下型号(只是为了举例):
class Song(models.Model):
name = CharField()
album = ForeignKey(Album, related_name='songs')
class Album(models.Model):
name = CharField()
genre = ForeignKey(Genre, related_name ='albums')
class Genre(models.Model):
name = CharField()
我正在寻找一种方法来获取与特定(过滤)流派或流派相关的专辑相关的所有歌曲,同时在数据库中而不是“在内存中”进行连接。
我知道我可以使用 select_related 子句反过来(在 good example for this blog post 之后:
songs = Song.objects.select_related("album").select_related('genre').all()
并且查询集已经包含了歌曲专辑中的所有流派属性,而无需再次访问数据库。
我的问题是如何反过来:从特定(或过滤的)流派开始并获取所有歌曲 -d 拥有外键链。
【问题讨论】:
标签: django django-orm