记录在使用Django开发过程中遇到的问题(6)--User.objects.filter()过滤条件动态添加, json.loads(request.body)获取前台参数

记录在使用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)    把整个字典当作过滤条件,两个星号是解析字典的,不可省略

 

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值