djangoのGenericForeignKeyを使用し、UserにForeignKeyを持ち、最新の変更日のようないくつかの他のフィールドを持つ投票アプリケーション(django格付けがあれば違いがあります)を使用します。特定のモデルのDjango GenericForeignKeyルックアップ
1人のユーザーが最新の変更日順に投票した、1つのコンテンツタイプのすべてのオブジェクトを取得したいと考えています。私が理解する限り、すべての情報は単一のテーブルにあります(content_typeはプリフェッチ/キャッシュ可能です)。残念ながら、djangoはcontent_objectをリクエストするたびに余分なクエリを作成します。
したがって、特定のモデル、特定のユーザー、関連するオブジェクト、およびデータベースのヒット数が最小の順序で、すべての投票を得るにはどうすればよいですか?
編集:今は2つのクエリを使用しています。最初にすべての投票を選択し、必要なすべてのオブジェクトを取得し、.filter(pk__in = obj_ids)でフィルタリングし、最後に投票オブジェクトに入力します。しかし、が問題の解決に役立つようです。
残念ながらselect_relatedはGFK afaikで動作しません – teferi