我想像这样过滤数据库。
qs = profile.objects.filter().select_related('profile_detail').select_related('location')
但是这里的位置是profile_detail模型中的一个外键。那我该怎么做呢?
class Location(models.Model):
place = models.CharField(max_length=128)
class ProfileDetail(models.Model):
location = models.ForiegnKey(Location)
class Profile(models.Model):
detail = models.ForeignKey(ProfileDetail)
答案 0 :(得分:2)
您可以使用相关的查询查询语法__
https://docs.djangoproject.com/en/1.10/topics/db/queries/#lookups-that-span-relationships
qs = profile.objects.filter().select_related('detail__location')
它应detail
而不是profile_detail
。就像你在Profile
中的字段叫