似乎没有办法在Django中捕获整个查询字符串,不是吗?我只有捕获单个参数的解决方案。
那么如何检查查询字符串是否存在
我想检查查询字符串本身是否存在(“?”之后的任何参数),如果确实如此,则替换或添加参数“param1”。我怎样才能做到这一点?例如:
localhost:8000 -> localhost:8000/?param1=a
localhost:8000/?param1=1 -> localhost:8000/?param1=bb
localhost:8000/?param1=1¶m2=fdfd -> localhost:8000/?param1=333¶m2=fdfd
localhost:8000/?param2=fdfd -> localhost:8000/?param1=1¶m2=fdfd
我该怎么做?
答案 0 :(得分:1)
request.GET
是查询字符串,它符合字典界面。与所有Python容器一样,布尔上下文中的空dict为False。所以你可以通过if request.GET
来检查它是否为空。
但是,在您的示例中,无论如何您似乎总是更换param1,不需要先检查它:只需设置值:request.GET['param1'] = 'whatever'
。