以下是模型设置和我正在尝试的查询的简要示例。这并没有给我任何Django 1.6中的错误,但在1.7中它给了我一个例外。 "隐含"看来,接口查询集上没有外键。我尝试了select_related(' gwportprefix')和prefetch_related(' gwportprefix')但没有运气。
class Interface(models.Model):
# Several fields here that are not related.
pass
class GwPortPrefix(models.Model):
interface = models.ForeignKey('Interface', db_column='interfaceid')
for gwport in Interface.objects.filter(gwportprefix__isnull=False):
gwport_matches.add(gwport)
这会产生以下FieldError:
无法解析关键字' gwportprefix'进入田野。选择是(一切都直接在接口上。没有隐含的外键)
答案 0 :(得分:1)
在QuerySet / Manager实现中发生了很多变化。你试过吗?
Interface.objects.filter(gwportprefix_set__isnull=False)