Djangoの組み込みユーザーモデルを使用していて、ForeignKeytoUserを持つカスタムFooオブジェクトがあります。次のように、特定の制約に適合するすべてのUserオブジェクトとすべてのFooオブジェクトを選択しようとしています。
SELECT * from auth_user LEFT OUTER JOIN "foo" ON
(auth_user.id = foo.id AND <other criteria here>)
Djangoでこれをどのように達成する必要がありますか?これまでに試しました:
User.objects.filter(foo__<criteria>)
しかし、これは次のようなSQLを生成します。
SELECT * from auth_user LEFT OUTER JOIN "foo" ON
(auth_user.id = foo.id) WHERE <other criteria here>
条件に一致するFooオブジェクトを持つUserオブジェクトのみを返します。または、すべてのユーザーオブジェクトを選択して、それぞれに対してクエリを実行することもできますが、それでは効率が大幅に低下します。