私には2つのDjangoモデルがあり、大まかに次のように要約されています。
class Thing(Model):
date_created = DateTimeField()
class ThingDateOverride(Model):
thing = ForeignKey(Thing)
category = ForeignKey(Category)
override = DateTimeField()
私がやりたいのは、適切なフィールドでソートされThingsた特定のリストを作成することです。そのようなオーバーライドが存在しない場合は、 'sを作成します。CategoryThingDateOverride overrideThingdate_created
言い換えると:
のそれぞれについて
Thing、その/ペアに適切なものが存在する場合はいずれかまたはifQuerySetを保持します。Thing.date_createdoverrideThingDateOverrideThingCategoryThing結果のタイムスタンプでセットを並べ替えます。
これはSQLで実現できますが、エンジン固有のコードを作成することは避けたいと思います。私は現在、ORM(純粋なPython)の周りのロジックを実装していますが、データベースでこれを処理したいと思います。
どうすればいいですか?