Django过滤器与bool条件

时间:2015-09-03 13:47:47

标签: django django-queryset django-filter

在视图中,我想获得一个值为 queryset 的值,其中只有字段 current_num 小于 current_tot 的记录才是显示:

我尝试过没有成功:

 qs = qs.filter( F('current_tot')!=F('current_num'))

如果查找小于等于,则可以:

    qs = qs.filter( current_num__lte=F('current_tot'))

如果查找小于,则不显示结果:

    qs = qs.filter( current_num__lte=F('current_tot'))

1 个答案:

答案 0 :(得分:1)

你不能在平等的左侧使用F. 要获得所需内容,请使用exclude而不是filter:

qs = qs.exclude(current_tot = F('current_num'))