首页 > 解决方案 > django动态过滤不返回预期结果

问题描述

以下代码不会返回预期结果:

def getAssignedRoutes( request ):

search = request.POST.get('search', None)
rtgwfSelectRoutes = SelectRoute.objects.exclude(status='rtg_wf_resp').order_by('-created')

if search is not None and len(search.strip()) > 2:
    rtgwfSelectRoutes.filter(correlation_id__icontains=search.strip())

return render(request,'select_tool/assignedRoutes.html',{'rtgwfSelectRoutes': rtgwfSelectRoutes})

rtgwfSelectRoutes 返回所有记录而不过滤搜索。怎么了?

标签: django-viewsdjango-queryset

解决方案


找到了解决方案:当过滤器返回一些东西时,你必须将它分配给一个变量,比如:

rtgwfSelectRoutes = rtgwfSelectRoutes.filter(correlation_id__icontains=search.strip())

现在它像预期的那样工作;)


推荐阅读