记录在使用Django开发过程中遇到的问题(6)--User.objects.filter()过滤条件动态添加, json.loads(request.body)获取前台参数
根据前台传的数据动态控制筛选条件
req = json.loads(request.body) 获取前台传过来的参数
id = req.get("id")
user = req.get("userId") 这里接收参数用的是get,是因为即使前端没有传这个参数也不会报错,这就可以各种条件随意组合了
time = req.get("time")
querydict = {} 一个空字典
querydict["del_flag"] = 1 给字典赋值,这里可以写一些固定的筛选条件
if id != None: 条件语句,如果不为空,说明前台传了这个参数,把这个筛选条件加到字典里,如果没传就不加
querydict["id"] = id
if user != None:
querydict["user"] = user
if month !=None:
querydict["time"] = time
res = Wages.objects.filter(**querydict) 把整个字典当作过滤条件,两个星号是解析字典的,不可省略