我有以下这些模型:
class Foo(models.Model):
some_field = models.CharField()
class Meta:
pass
class Bar(Foo):
some_other_field = models.CharField()
class Meta:
pass
这个例子是简化的,在实际情况中,这两个模型都有很多字段。
当我查询 Bar 时,Django ORM会创建一个包含与 Foo 的内部连接的查询。
我不需要 Foo 中的信息。
问题:有没有一种方法可以查询 Bar 而不必使用与 Foo 的内部连接?
我意识到删除 Bar 继承 Foo 并将其作为外键是解决此问题的更好方法。然而,有很多旧代码依赖于它,所以在我有时间和勇气重构应用程序的旧部分之前,我更喜欢快速解决方案。
我也意识到我可以自己编写 SQL 查询,但我更喜欢使用 ORM 的解决方案。