在django中查询获取数据,get, filter,all(),values()操作


Posted in Python onAugust 09, 2020

django 中当我们要查询获取数据时:

数据库中的信息:

如一个学生信息表 students:

get方法:

students.objects().get(a = b)

其中a为students表中的一个属性如id,name 等

如:students.objects().get(name = ‘张三') 即获取name为张三的学生的信息

filter 用法与get相同

但是get必须只能取一个数据

filter 能去0,1,多个数据

即上述中如果表中有多个学生都叫张三同名了,get就会报错

同样表中没有叫张三的学生也会报错

filter则不报错,所以在要精准查询时用get

students.objects().all() 是获取表中所有的数据

values(a)属性可以加在上述三个的末尾,表示只获取a属性:

students.objects().all().values('name')即获取到所有的表中的姓名,返回一个字典组成的列表[{‘name':‘张三'},{‘name':‘李四'},。。。]

students.objects().filter(name = ‘张三').values('id'), 只返回名为张三的学生的id,不返回其他属性了。

补充知识:django filter过滤器实现显示某个类型指定字段不同值

1,前端样式

在django中查询获取数据,get, filter,all(),values()操作

2,html代码

{% load asset_filter %}

<div class="col-sm-2">
  <select class="input-sm form-control select2 inline" name="ServiceModel">
    <option value="">模块</option>
    {% for i in 'Ecs'|ecs_model_field_distinct:'ServiceModel' %}
      {% if i.0 %}
        <option value="{{ i.0 }}">{{ i.0 }}</option>
      {% endif %}
    {% endfor %}
  </select>
</div>

3,后端代码

asset_filter.py 内容如下:

@register.filter(name='ecs_model_field_distinct')
def ecs_model_field_distinct(model_name, field_name):
  '''
  获取model_name模块对象的某个属性field_name的distinct值,返回值的数组
  :param model_name:
  :param field_name:
  :return:
  '''
  asset_app = apps.get_app_config('rule')
  return asset_app.get_model(model_name).objects.all().values_list(field_name).distinct()

以上这篇在django中查询获取数据,get, filter,all(),values()操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python操作CouchDB的方法
Oct 08 Python
Python同时向控制台和文件输出日志logging的方法
May 26 Python
浅析Python的web.py框架中url的设定方法
Jul 11 Python
对pycharm代码整体左移和右移缩进快捷键的介绍
Jul 16 Python
python对视频画框标记后保存的方法
Dec 07 Python
Python中url标签使用知识点总结
Jan 16 Python
Django ValuesQuerySet转json方式
Mar 16 Python
Python第三方包PrettyTable安装及用法解析
Jul 08 Python
python 解决函数返回return的问题
Dec 05 Python
教你用python控制安卓手机
May 13 Python
Windows安装Anaconda3的方法及使用过程详解
Jun 11 Python
python 对图片进行简单的处理
Jun 23 Python
Python 使用双重循环打印图形菱形操作
Aug 09 #Python
Python 添加文件注释和函数注释操作
Aug 09 #Python
vscode配置anaconda3的方法步骤
Aug 08 #Python
Pycharm调试程序技巧小结
Aug 08 #Python
Python 在局部变量域中执行代码
Aug 07 #Python
Python如何创建装饰器时保留函数元信息
Aug 07 #Python
python的launcher用法知识点总结
Aug 07 #Python
You might like
我的论坛源代码(一)
2006/10/09 PHP
php 无限级缓存的类的扩展
2009/03/16 PHP
header导出Excel应用示例
2014/01/24 PHP
php中实现获取随机数组列表的自定义函数
2015/04/02 PHP
Laravel中错误与异常处理的用法示例
2018/09/16 PHP
Yii redis集合的基本使用教程
2020/06/14 PHP
动态控制Table的js代码
2007/03/07 Javascript
js中Math之random,round,ceil,floor的用法总结
2013/12/26 Javascript
jquery操作cookie插件分享
2014/01/14 Javascript
不使用jquery实现js打字效果示例分享
2014/01/19 Javascript
jQuery中:only-child选择器用法实例
2015/01/03 Javascript
JavaScript获取当前网页标题(title)的方法
2015/04/03 Javascript
jQuery实现的可编辑表格完整实例
2016/06/20 Javascript
BootStrap table使用方法分析
2016/11/08 Javascript
js实现首屏延迟加载实现方法 js实现多屏单张图片延迟加载效果
2017/07/17 Javascript
vue 使用element-ui中的Notification自定义按钮并实现关闭功能及如何处理多个通知
2019/08/17 Javascript
JS 实现发送短信验证码的“59秒后重新发送验证短信”功能
2019/08/23 Javascript
vue跳转方式(打开新页面)及传参操作示例
2020/01/26 Javascript
js编写简易的计算器
2020/07/29 Javascript
Openlayers实现图形绘制
2020/09/28 Javascript
Python简单实现安全开关文件的两种方式
2016/09/19 Python
PyCharm设置护眼背景色的方法
2018/10/29 Python
Python实现将字符串的首字母变为大写,其余都变为小写的方法
2019/06/11 Python
python使用beautifulsoup4爬取酷狗音乐代码实例
2019/12/04 Python
浅谈pytorch 模型 .pt, .pth, .pkl的区别及模型保存方式
2020/05/25 Python
使用OpenCV实现道路车辆计数的使用方法
2020/07/15 Python
Python制作一个仿QQ办公版的图形登录界面
2020/09/22 Python
CSS3实现的闪烁跳跃进度条示例(附源码)
2013/08/19 HTML / CSS
Corelle官方网站:购买康宁餐具
2016/11/02 全球购物
表决心的诗句大全
2014/03/11 职场文书
亮化工程实施方案
2014/03/17 职场文书
给市场的环保建议书
2014/05/14 职场文书
岗位标兵事迹材料
2014/05/17 职场文书
Python异常类型以及处理方法汇总
2021/06/05 Python
Innodb存储引擎中的后台线程详解
2022/04/03 MySQL
Django框架模板用法详解
2022/06/10 Python