where条件基础上在Django
另一个字段的值我有表结构如下:where条件基础上在Django
==========================================
itemName minPrice maxPrice curPrice
==========================================
A 10 20 8
B 15 25 12
c 20 30 25
在MySQL中是这样
select * from Items where curPrice<minPrice
,但我想它应该会返回像“一个Django, B项目名称结果“。
我已经尝试使用过滤器,但我无法取得成功。
要与模型中的其他领域的过滤比较值,使用F()
对象:
from django.db.models import F
Item.objects.filter(curPrice__lt=F('minprice'))
感谢您给出答案,但我得到了错误。错误是“不允许在字段'curPrice'上加入。您是否拼写'le'作为查找类型?” – 2014-10-08 09:20:57
没有__lt是正确的,解决方案对我来说很合适。这个错误可能只是因为你有'minPrice'而不是'minprice' - 它可能会令人困惑 – 2014-10-08 09:30:21
好的,谢谢你的解决。 – 2014-10-08 09:32:01
没有你试过''model.objects.filter(curPrice
2014-10-08 08:27:41
@VishnuUpadhyay请不要除非你真的知道解决方案,否则不要提供代码。该语法无效。 – 2014-10-08 08:41:27