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

作者:百奎先生 时间:2023-09-04 16:10:27 

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()

来源:https://blog.csdn.net/qq_38775473/article/details/84886690

标签:django,get,filter,all,values
0
投稿

猜你喜欢

  • 在Python 字典中一键对应多个值的实例

    2023-07-25 23:45:02
  • MySQL中LAG()函数和LEAD()函数的使用

    2024-01-27 14:05:35
  • Python threading中lock的使用详解

    2023-01-16 08:32:26
  • Python使用pytest-playwright的原因分析

    2023-12-12 01:22:39
  • mysql 5.7.18 绿色版下载安装教程

    2024-01-20 02:23:30
  • 详解pandas获取Dataframe元素值的几种方法

    2022-12-28 07:30:01
  • 通过PYTHON来实现图像分割详解

    2023-12-08 16:02:46
  • 详解链接的rel与target

    2007-11-05 18:25:00
  • JavaScript eval() 函数介绍及应用示例

    2024-04-19 10:00:01
  • python tensorflow学习之识别单张图片的实现的示例

    2023-06-30 21:11:32
  • Mootools常用方法扩展(四)

    2009-02-21 11:12:00
  • Python实现FTP上传文件或文件夹实例(递归)

    2021-11-21 06:05:30
  • 源码分析系列之json_encode()如何转化一个对象

    2023-07-15 05:25:54
  • js友好的表单验证程序vform

    2007-08-16 13:32:00
  • PhpStorm配置debug环境的详细过程

    2023-05-26 20:04:32
  • 简介Python的collections模块中defaultdict类型的用法

    2021-01-04 20:14:54
  • 使用Python保存网页上的图片或者保存页面为截图

    2022-04-08 10:45:19
  • python Django中models进行模糊查询的示例

    2023-08-02 05:54:09
  • Python基于FTP模块实现ftp文件上传操作示例

    2024-01-02 00:04:38
  • 在Python中字符串、列表、元组、字典之间的相互转换

    2021-08-30 07:09:42
  • asp之家 网络编程 m.aspxhome.com