我在搜索字段中有六个文本框,用户可以输入任一值。我通过以下方式捕获这些值:
if request.GET:
result_list = []
client_build = request.GET.get('client_build','')
app_build = request.GET.get('app_build','')
ws_build = request.GET.get('ws_build','')
asset = request.GET.get('asset','')
feature = request.GET.get('feature','')
test_type = request.GET.get('test_type','')
result_lists = result.objects.filter(asset=asset,feature=feature, test_type=test_type)
job_list = job.objects.filter(client_build=client_build ,app_build = app_build,ws_build = ws_build)
当我尝试过滤它们时,它给出了带有基数10的int()的无效文字:''“错误!如何只获取用户输入的值和过滤器中的查询值。
我提到了这篇文章Django - multiple field search issues,但我有六个文本框,如果其他不是我要找的那个。
答案 0 :(得分:1)
@ vikalp.sahni是对的。您输入一个整数,但您不知道输入将您的答案转换为字符串。要解决这个问题,正如你所说client_build是唯一的整数,它必须是:
client_build = int(request.GET.get('client_build',''))
总的来说,我认为您的查询是正确的。如果它是整数,请记住将 int 。