1. ホーム
  2. python

[解決済み] プロパティで絞り込む

2022-08-20 12:51:18

質問

Django のクエリセットをモデルプロパティでフィルタリングすることは可能ですか?

私のモデルにはメソッドがあります。

@property
def myproperty(self):
    [..]

で、このプロパティでフィルタリングしたい。

MyModel.objects.filter(myproperty=[..])

というのはどうにかならないものでしょうか?

どのように解決するのですか?

いいえ。 Django のフィルタはデータベースレベルで動作し、SQL を生成します。 Python のプロパティに基づいてフィルタリングするには、オブジェクトを Python にロードしてプロパティを評価する必要があります--そしてその時点で、ロードするためのすべての作業を既に終えています。