在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中内置的日志模块logging用法详解
Jul 12 Python
Python中列表和元组的使用方法和区别详解
Dec 30 Python
Python 通过pip安装Django详细介绍
Apr 28 Python
教你用Python写安卓游戏外挂
Jan 11 Python
python求最大连续子数组的和
Jul 07 Python
Django使用paginator插件实现翻页功能的实例
Oct 24 Python
对python操作kafka写入json数据的简单demo分享
Dec 27 Python
Django-Model数据库操作(增删改查、连表结构)详解
Jul 17 Python
Python学习笔记之函数的定义和作用域实例详解
Aug 13 Python
Linux下通过python获取本机ip方法示例
Sep 06 Python
python GUI库图形界面开发之PyQt5布局控件QVBoxLayout详细使用方法与实例
Mar 06 Python
Python try except else使用详解
Jan 12 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
php skymvc 一款轻量、简单的php
2011/06/28 PHP
PHP字符串的编码问题的详细介绍
2013/04/27 PHP
浅析php面向对象public private protected 访问修饰符
2013/06/30 PHP
PHP根据传入参数合并多个JS和CSS文件的简单实现
2014/06/13 PHP
php数组去除空值函数分享
2015/02/02 PHP
PHP未登录自动跳转到登录页面
2016/12/21 PHP
PHPMailer发送邮件
2016/12/28 PHP
PHP实现基于面向对象的mysqli扩展库增删改查操作工具类
2017/07/18 PHP
才发现的超链接js导致网页中GIF动画停止的解决方法
2007/11/02 Javascript
jquery BS,dialog控件自适应大小
2009/07/06 Javascript
通过Jquery的Ajax方法读取将table转换为Json
2014/05/31 Javascript
node.js中的buffer.Buffer.isBuffer方法使用说明
2014/12/14 Javascript
dul无法加载bootstrap实现unload table/user恢复
2016/09/29 Javascript
NodeJs实现定时任务的示例代码
2017/12/05 NodeJs
浅析JavaScript中的特殊数据类型
2017/12/15 Javascript
js隐式转换的知识实例讲解
2018/09/28 Javascript
JavaScript数据结构与算法之检索算法实例分析【顺序查找、最大最小值、自组织查询】
2019/02/22 Javascript
layui实现左侧菜单点击右侧内容区显示
2019/07/26 Javascript
js实现单元格拖拽效果
2020/02/10 Javascript
js实现简单放大镜效果
2020/03/07 Javascript
关于Python中Inf与Nan的判断问题详解
2017/02/08 Python
Python多个装饰器的调用顺序实例解析
2020/05/22 Python
Python实现播放和录制声音的功能
2020/08/12 Python
python的scipy.stats模块中正态分布常用函数总结
2021/02/19 Python
CSS3 @keyframes简单动画实现
2018/02/24 HTML / CSS
HTML5 Geolocation API的正确使用方法
2018/12/04 HTML / CSS
购买英国原创艺术:Art Gallery
2018/08/25 全球购物
Foreo国际站:Foreo International
2018/10/29 全球购物
SportsDirect.com马来西亚:英国第一体育零售商
2018/11/21 全球购物
《社戏》教学反思
2014/04/15 职场文书
2014业务员年终工作总结
2014/12/09 职场文书
2015财务年度工作总结范文
2015/05/04 职场文书
心灵捕手观后感
2015/06/02 职场文书
叶问观后感
2015/06/15 职场文书
2016年寒假社会实践活动总结
2015/10/10 职场文书
2016新年晚会开场白
2015/12/03 职场文书