ホームページ >バックエンド開発 >Python チュートリアル >モデルのプロパティに基づいて Django クエリセットをフィルターできますか?

モデルのプロパティに基づいて Django クエリセットをフィルターできますか?

Susan Sarandon
Susan Sarandonオリジナル
2024-10-17 17:03:30353ブラウズ

Can You Filter Django Querysets Based on Model Properties?

Django モデル プロパティによるフィルタリング

モデル プロパティに基づいて Django クエリセットをフィルタリングできますか?次のように定義されたモデル プロパティがあるとします。

<code class="python">@property
def myproperty(self):
    # ...</code>

次のようなプロパティを使用してクエリセットをフィルタリングしたいとします。

<code class="python">MyModel.objects.filter(myproperty=[...])</code>

これは達成可能ですか?

回答

残念ながら、Django ではモデル プロパティを直接フィルターすることはできません。 Django フィルターはデータベース レベルで動作し、SQL を生成します。 Python プロパティを評価するには、まずオブジェクトを Python に取り込む必要があります。ただし、このアプローチはデータベース フィルタリングの目的を無効にします。

以上がモデルのプロパティに基づいて Django クエリセットをフィルターできますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。