0
でネストされたジャンゴQオブジェクトが非常に複雑なクエリを手に入れた(例を解決しようとしないでください - 問題はより複雑である)減らす
crit=[]
crit.append(Q(firstcond = name) | Q(firstcond__isnull = True)
crit.append(Q(secondcond = name) | Q(firstcond__isnull = True)
MyObject.objects.filter(reduce(operator.and_, crit))
予想通り、この作品:
WHERE (firstcond = name OR firstcond IS NULL) AND (secondcond = name OR secondcond IS NULL)
しかし、今私OR:
WHERE ((firstcond = name OR firstcond IS NULL) AND (secondcond = name OR \
secondcond IS NULL)) OR (third = value)
私は3番目のint critリストを追加できません。減らすためにoperator.and_が必要です。私はoperator._orを減らした後に追加する必要がありますが、どうしますか?
それかどうかを確認するために私に1つの作業日を教えてください作品 - しかし、おいしい! –
どうもありがとうございます –