在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中列表生成式和生成器的区别
Aug 03 Python
Python利用Django如何写restful api接口详解
Jun 08 Python
win7 x64系统中安装Scrapy的方法
Nov 18 Python
解决python打不开文件(文件不存在)的问题
Feb 18 Python
详解python中TCP协议中的粘包问题
Mar 22 Python
Python Django给admin添加Action的方法实例详解
Apr 29 Python
django云端留言板实例详解
Jul 22 Python
python中的&amp;&amp;及||的实现示例
Aug 07 Python
python3实现的zip格式压缩文件夹操作示例
Aug 17 Python
Python Django 前后端分离 API的方法
Aug 28 Python
利用python画出AUC曲线的实例
Feb 28 Python
解决python便携版无法直接运行py文件的问题
Sep 01 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
超强分页类2.0发布,支持自定义风格,默认4种显示模式
2007/01/02 PHP
PHP5函数小全(分享)
2013/06/06 PHP
php中addslashes函数与sql防注入
2014/11/17 PHP
PHP-X系列教程之内置函数的使用示例
2017/10/16 PHP
PHP 断点续传实例详解
2017/11/11 PHP
jQuery 1.2.x 升? 1.3.x 注意事项
2009/05/06 Javascript
jQuery入门第一课 jQuery选择符
2010/03/14 Javascript
关于hashchangebroker和statehashable的补充文档
2011/08/08 Javascript
使用Javascript接收get传递的值的代码
2011/11/30 Javascript
jquery select 设置默认选中的示例代码
2014/02/07 Javascript
Egret引擎开发指南之创建项目
2014/09/03 Javascript
基于JS分页控件实现简单美观仿淘宝分页按钮效果
2016/11/07 Javascript
利用Javascript获取选择文本所在的句子详解
2017/12/03 Javascript
AngularJS中重新加载当前路由页面的方法
2018/03/09 Javascript
vue实现通讯录功能
2018/07/14 Javascript
Bootstrap的aria-label和aria-labelledby属性实例详解
2018/11/02 Javascript
vue多层嵌套路由实例分析
2019/03/19 Javascript
实例分析Array.from(arr)与[...arr]到底有何不同
2019/04/09 Javascript
[49:27]LGD vs OG 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
python协程用法实例分析
2015/06/04 Python
python简单文本处理的方法
2015/07/10 Python
python开发中module模块用法实例分析
2015/11/12 Python
Ubuntu下安装PyV8
2016/03/13 Python
Python3读取Excel数据存入MySQL的方法
2018/05/04 Python
python3.5安装python3-tk详解
2019/04/26 Python
Python如何基于selenium实现自动登录博客园
2019/12/16 Python
简单了解django文件下载方式
2020/02/10 Python
keras训练浅层卷积网络并保存和加载模型实例
2020/07/02 Python
JupyterNotebook 输出窗口的显示效果调整实现
2020/09/22 Python
打造经典复古风格的品牌:Alice + Olivia(爱丽丝+奥利维亚)
2016/09/07 全球购物
大学生自我鉴定范文模板
2014/01/21 职场文书
2014高考励志标语
2014/06/05 职场文书
中队活动总结
2014/08/27 职场文书
社区党的群众路线教育实践活动总结材料
2014/10/31 职场文书
2014幼儿园卫生保健工作总结
2014/12/05 职场文书
Java的Object类的九种方法
2022/04/13 Java/Android