南强小屋 Design By 杰米
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 杰米
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
南强小屋 Design By 杰米
暂无解决Django中多条件查询的问题的评论...
RTX 5090要首发 性能要翻倍!三星展示GDDR7显存
三星在GTC上展示了专为下一代游戏GPU设计的GDDR7内存。
首次推出的GDDR7内存模块密度为16GB,每个模块容量为2GB。其速度预设为32 Gbps(PAM3),但也可以降至28 Gbps,以提高产量和初始阶段的整体性能和成本效益。
据三星表示,GDDR7内存的能效将提高20%,同时工作电压仅为1.1V,低于标准的1.2V。通过采用更新的封装材料和优化的电路设计,使得在高速运行时的发热量降低,GDDR7的热阻比GDDR6降低了70%。