DjangoモデルのQuerySetsには、__gt
と__lt
の比較値がありますが、__ne
/ !=
/ <>
(等しくない?)
等しくないを使用してフィルタリングしたい:
例:
Model:
bool a;
int x;
が欲しいです
results = Model.objects.exclude(a=true, x!=5)
これ!=
は正しい構文ではありません。私が試しました__ne
、<>
。
私は結局使用しました:
results = Model.objects.exclude(a=true, x__lt=5).exclude(a=true, x__gt=5)
a=true
最初にすべてを除外してx=5
から、残りのフィルターを適用します。意図したクエリではa=true
、およびを使用するクエリのみが必要でしたx!=5
。違いは、すべてのものされていることa=true
とはx=5
また除外されます。