get多参数请求的问题
来源:7-6 列表筛选功能
大副大
2018-10-07
问题一:例如下面这个链接地址,类别选的是全部,生成的url结果里面ct为空,既然ct为空为什么会显示所有的机构呢?
http://127.0.0.1:8000/org_list?city=1&ct=
下面代码中不是要category存在才会filter吗?
# 类别筛选
category = request.GET.get('ct', '')
if category:
all_orgs = all_orgs.filter(category=category)
问题二:另外还是这个url,是django自动的做了一个数据库的联合查询吗?可以解释一下吗?
http://127.0.0.1:8000/org_list?city=1&ct=ge
写回答
1回答
-
bobby
2018-10-10
ct为空的意思是默认选择所有数据,当然你也可以传递all也行,这个完全是个人爱好,很多大型网站都会这样传空值表示所有,代码中的筛选逻辑的意思不是说必须存在才会为获取所有数据,这里面两种情况都会获取所有数据,第一:如果url中没有ct这个参数, 第二 有参数但是参数为空 这两种情况都会获取所有数据
022018-10-12
相似问题