django列表筛选功能的实现代码


Posted in Python onMarch 27, 2020

views,中设置请求的类型

class LawDetailView(View):
 def get(self, request, law_id):
  type = request.GET.get('type', '')
  law = Law.objects.get(id=law_id)

  return render(request, 'zcfg-detail.html', {
   'law': law,
   'type': type,
  })

templates,中设置:

<div class="col-lg-12" style="margin-bottom: 20px;">
    <a class="{% if type == '' %}btn btn-danger{% else %}btn btn-default{% endif %}" href="?type=" rel="external nofollow" role="button">全部</a>
    <a class="{% if type == 'fl' %}btn btn-danger{% else %}btn btn-default{% endif %}" href="?type=fl" rel="external nofollow" role="button">法律</a>
    <a class="{% if type == 'xzfg' %}btn btn-danger{% else %}btn btn-default{% endif %}" href="?type=xzfg" rel="external nofollow" role="button">行政法规</a>
    <a class="{% if type == 'bmgz' %}btn btn-danger{% else %}btn btn-default{% endif %}" href="?type=bmgz" rel="external nofollow" role="button">部门规章</a>
    <a class="{% if type == 'dfgz' %}btn btn-danger{% else %}btn btn-default{% endif %}" href="?type=dfgz" rel="external nofollow" role="button">地方规章</a>
</div>

补充知识:django 一种动态查询的便捷实现过程

问题引出

你可能遇到这种情况,在前端页面上有查询功能,要查询的输入选择有A,B,C等,可以通过任意一个查询,或者任意组合进行查询。

在后端,你可以使用request.GET['A']获取传入的数值。

我们需要判断哪个有输入,再在数据库中进行查询,这样比较麻烦。

解决方案

动态实现查询过程

kwargs = {}
if A is not None:
 kwargs['name__startWith'] = A
if B is not None:
 kwargs['address__contains'] = B
if C is not None:
 kwargs['mobile__endWith'] = C
...
...
personList = Person.objects.filter(**kwargs)
...

注:

A B C 等,为前端传输过来的数据

name address mobile 等,需为你要查询的表的属性字段

startWith contains endWith 等,为你要筛选的规则

Person 为model 表名

以上这篇django列表筛选功能的实现代码就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python中pandas.DataFrame排除特定行方法示例
Mar 12 Python
python中hashlib模块用法示例
Oct 30 Python
Python实现正弦信号的时域波形和频谱图示例【基于matplotlib】
May 04 Python
python抓取京东小米8手机配置信息
Nov 13 Python
python-opencv 将连续图片写成视频格式的方法
Jan 08 Python
Python实现数值积分方式
Nov 20 Python
Python实现手机号自动判断男女性别(实例解析)
Dec 22 Python
Python中私有属性的定义方式
Mar 05 Python
浅谈在JupyterNotebook下导入自己的模块的问题
Apr 16 Python
Python键鼠操作自动化库PyAutoGUI简介(小结)
May 17 Python
详解Python设计模式之策略模式
Jun 15 Python
python Zmail模块简介与使用示例
Dec 19 Python
python实现猜数游戏
Mar 27 #Python
手把手教你安装Windows版本的Tensorflow
Mar 26 #Python
python pandas.DataFrame.loc函数使用详解
Mar 26 #Python
Python计算指定日期是今年的第几天(三种方法)
Mar 26 #Python
Python函数默认参数常见问题及解决方案
Mar 26 #Python
Python内建序列通用操作6种实现方法
Mar 26 #Python
PyQt5 界面显示无响应的实现
Mar 26 #Python
You might like
用PHP查询搜索引擎排名位置的代码
2010/01/05 PHP
php学习之简单计算器实现代码
2011/06/09 PHP
php文件上传的例子及参数详解
2013/12/12 PHP
Php连接及读取和写入mysql数据库的常用代码
2014/08/11 PHP
PHP基于CURL进行POST数据上传实例
2014/11/10 PHP
以文件形式缓存php变量的方法
2015/06/26 PHP
phpStudy配置多站点多域名和多端口的方法
2017/09/01 PHP
jQuery选择器全面总结
2014/01/06 Javascript
AngularJS教程 ng-style 指令简单示例
2016/08/03 Javascript
微信小程序 wx.request(接口调用方式)详解及实例
2016/11/23 Javascript
vue-cli 如何打包上线的方法示例
2018/05/08 Javascript
vue实现同一个页面可以有多个router-view的方法
2018/09/20 Javascript
浅谈JS和jQuery的区别
2019/03/27 jQuery
vue搜索和vue模糊搜索代码实例
2019/05/07 Javascript
json_decode 索引为数字时自动排序问题解决方法
2020/03/28 Javascript
微信小程序开发(一):服务器获取数据列表渲染操作示例
2020/06/01 Javascript
vue相同路由跳转强制刷新该路由组件操作
2020/08/05 Javascript
vue接口请求加密实例
2020/08/11 Javascript
[04:45]DOTA2-DPC中国联赛正赛 iG vs LBZS 赛后选手采访
2021/03/11 DOTA
Python3.0与2.X版本的区别实例分析
2014/08/25 Python
Python类属性与实例属性用法分析
2015/05/09 Python
解决Python网页爬虫之中文乱码问题
2018/05/11 Python
pyshp创建shp点文件的方法
2018/12/31 Python
python os.path.isfile()因参数问题判断错误的解决
2019/11/29 Python
Django中F函数的使用示例代码详解
2020/07/06 Python
Python利用命名空间解析XML文档
2020/08/10 Python
详解matplotlib绘图样式(style)初探
2021/02/03 Python
Grid 宫格常用布局的实现
2020/01/10 HTML / CSS
用canvas实现图片滤镜效果附演示
2013/11/05 HTML / CSS
Radley英国官网:英国莱德利小狗包
2019/03/21 全球购物
三星印度官网:Samsung印度
2019/08/03 全球购物
英国名牌男装店:Standout
2021/02/17 全球购物
工程开工庆典邀请函
2014/02/01 职场文书
房屋买卖协议样本
2014/11/16 职场文书
中职班主任培训心得体会
2016/01/07 职场文书
python中的plt.cm.Paired用法说明
2021/05/31 Python