在Django ORM中,如果条件为真,我们如何跳过对列的检查?以及如果条件为假,如何使用特定值检查该列。
例如,如何使用Django ORM实现以下mysql条件?
IF(product.display_stock > 0,'0',product.hide) = 0
这里需要的是,如果乘积是display_stock is > 0
,那么我不在乎hide
列的值是什么。如果为display_stock = 0
,则需要确认hide = 0
。
非常感谢Django ORM专家提供的任何帮助。谢谢。
尝试过滤从ORM返回的查询集。
Product.objects.extra(select={'in_stock': "display_stock > 0"}).all()
或
Product.objects.filter(display_stock=0).all()