我有两个具有一对多关系的模型(Organization hasMany Locations)
class Organizations(models.Model):
name = models.CharField(max_length=40)
class Location(models.Model):
name = models.CharField(max_length=50)
organization = models.ForeignKey(Organizations, to_field="name", db_column="organization_name", related_name='locations')
class Meta:
db_table = u'locations'
现在,在检索“组织”时尝试预取位置时,我收到此错误。
Organizations.objects.prefetch_related('locations')
AttributeError: Cannot find 'locations' on Organizations object, 'locations' is an invalid parameter to prefetch_related()
但是,如果我以相反的方式预加载它可以正常工作。
Location.objects.prefetch_related('organization')
注意:从位置模型预加载组织后,不再发生先前的错误。
我使用的是Django版本:1.8.6
答案 0 :(得分:1)
似乎这个错误只出现在django shell中。这在django应用程序本身中运行良好