幽灵资源网 Design By www.bzswh.com
tags: django中对条件查询
一些cms项目都会使用到多条件查询,我们后端如何处理请求的条件呢"htmlcode">
def order_list(request): if request.method == 'GET': return render(request, 'admin/order_list.html') if request.method == 'POST': # 获取案件号 case_order = request.POST.get('case_order') # 获取客户姓名 case_name = request.POST.get('case_name') # 获取身份证号码 idno = request.POST.get('idno') # 获取贷款日期 loan_date = request.POST.get('loan_date') # 获取贷款状态 state = request.POST.get('state') # 获取贷款类型 dk_type = request.POST.get('dk_type') # 定一个字典用于保存前端发送过来的查询条件 search_dict = dict() # 如果有这个值 就写入到字典中去 if case_order: search_dict['loan_id'] = case_order if case_name: search_dict['name'] = case_name if idno: search_dict['user_card'] = idno if loan_date: search_dict['pri_date'] = loan_date if state: # 通过关联关系查询出来需要的数据 state_info = StatuTable.objects.filter(statu_name=state).first() search_dict['statu_id'] = state_info.statu_id if dk_type: loa = LoantypeTable.objects.filter(loan_name=dk_type).first() search_dict['loa_loan_id'] = loa.loan_id # 多条件查询 关键点在这个位置传如的字典前面一定要加上两个星号. user_order_info = UserTable.objects.filter(**search_dict) # 序列化 data_info = [user_order.to_dict() for user_order in user_order_info] data = { 'code': 200, 'data_info': data_info } return JsonResponse(data)
Models见上一篇文章
传送门 Model
前端html页面
<head> // 使用jquery就必须引入 <script src="/UploadFiles/2021-04-08/jquery.js">后端搞定了就可以在前端写ajax去渲染页面了.
$(function () { var token = $(':input[name="csrfmiddlewaretoken"]').val() $('#search-order').submit(function () { $(this).ajaxSubmit({ url: '/admin/order_list/', dataType: 'json', type: 'POST', headers: {'X-CSRFToken': token}, success: function (data) { if (data.code == 200) { var html ='<tr>\n' + ' <th>申请编号</th>\n' + ' <th>客户名称</th>\n' + ' <th>联系方式</th>\n' + ' <th>身份证号码</th>\n' + ' <th>办理日期</th>\n' + ' <th>处理人</th>\n' + ' <th>处理状态</th>\n' + ' <th>处理时间</th>\n' + ' <th>操作</th>\n' + ' </tr>' var tr_html = template('tr_list', {users: data.data_info}) html += tr_html $('#test').html(html) } } }) // 阻止默认提交 return false; }) })总结:
重点就在怎么构建字典后最后构建好的字段如何传参的问题.
以上这篇解决Django中多条件查询的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
标签:
Django,多条件,查询
幽灵资源网 Design By www.bzswh.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
幽灵资源网 Design By www.bzswh.com
暂无评论...
《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线
暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。
艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。
《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。