文章目录

  • 问题:
  • 解决办法:
    • 方式一:
    • 方式二:
  • 方式三:
  • 写在最后

问题:

如图所示,Django数据库中存储如下字段。

这是在前端渲染出的数据。现在的需求是:要把factory这一列数据从后端数据库提取出来得到一个list方便后续的(select option)使用。有两种方式

  1. 不重新写接口,直接先获取factory所有数据,然后在前端数据处理成list形式(显然不可取)
  2. 重新写接口,直接在后端就单独取出这一列数据,前端直接用就好了(减少了前端的负担)

问题来了,Django封装了sql的语句操作,没有用到sql的语法。得去看看Django ORM是怎么射的,关键词:获取一列的所有值得到列表。

解决办法:

model为:Factory

方式一:

代码:

Factory.objects.values('factory')

输出内容:

<QuerySet [{‘factory’: ‘520’}, {‘factory’: ‘123’}, {‘factory’:
‘5201314’}, {‘factory’: ‘1314520’}, {‘factory’: ‘2222’}]>

方式一获取到的是一个QuerySet,内容是键值对构成的,键为表的列名,值为对应的每个值。

方式二:

代码:

Factory.objects.values_list('title')

输出内容:

<QuerySet [(‘520’,), (‘123’,), (‘5201314’,), (‘1314520’,),
(‘2222’,)]>
方式二获取到的也是一个QuerySet,但是内容是元祖形式的查询列的值。

方式三:

代码:

  ftyNameList=list(Factory.objects.values_list('factory',flat=True))

输出内容:

['520', '地球牌光伏板', '1314520', '5201314', '宇宙牌光伏板']

写在最后

Django还有q查询和F查询,sql的每一种操作在Django中应该都有对应语句实现

Django数据库orm操作以list形式获取数据库中某列所有值相关推荐

  1. 西游之路——python全栈——Django之ORM操作

    Django之ORM操作 前言 Django框架功能齐全自带数据库操作功能,本文主要介绍Django的ORM框架 到目前为止,当我们的程序涉及到数据库相关操作时,我们一般都会这么搞: 创建数据库,设计 ...

  2. 【Django】ORM操作#2

    目录 必知必会的13条查询方法 单表查询之神奇的双下划线 一对多 ForeignKey 多对多 ManyToManyField 在Python脚本中调用Django环境 Django终端打印SQL语句 ...

  3. C# 创建Excel,读取mdb数据库,写入Excel数据,获取mdb中所有表格名字,选择多个文件

    C# 创建Excel,读取mdb数据库,写入Excel数据,获取mdb中所有表格名字,选择多个文件 1.创建Excel表 使用OleDbCommand类执行SQL语句即可,代码如下 /// <s ...

  4. java解析sql查询字段_sql解析json格式字段 如何获取json中某个字段的值?

    java将json数据解析为sql语句?小编给你倒一杯热水.可你惦记着其他饮料,所以你将它放置一旁.等你想起那杯水时,可惜它已经变得冰冷刺骨. 图片中是json数据,每个数据的开头都有表名称,操作类型 ...

  5. Oracle怎么获取json类型字符串值,sql解析json格式字段 如何获取json中某个字段的值?...

    java将json数据解析为sql语句?小编给你倒一杯热水.可你惦记着其他饮料,所以你将它放置一旁.等你想起那杯水时,可惜它已经变得冰冷刺骨. 图片中是json数据,每个数据的开头都有表名称,操作类型 ...

  6. Py之Xlrd:Xlrd的使用方法总结(获取的sheet名字/sheet索引/sheet内容/数和列数、获取整行和整列的值(列表) 、指定单元格的内容/数据类型)之详细攻略

    Py之Xlrd:Xlrd的使用方法总结(获取的sheet名字/sheet索引/sheet内容/数和列数.获取整行和整列的值(列表) .指定单元格的内容/数据类型)之详细攻略 目录 Xlrd的使用方法总 ...

  7. C# vs2005中如何获取datagridview中单元格的值

    dataGridView1.Rows[0].Cells[0].Value.ToString(); //获取第一行第一列的值dataGridView1.CurrentRow.Cells[0].Value ...

  8. 理解 Math.max(min).apply 获取数组中的最大(小)值机制

    前言- 阿姆斯特朗回旋加速喷气式阿姆斯特朗炮, 还原度还真高呢 >-< 了解 apply 传入参数机制 //模拟 Math.max 方法 function Math_max(num1, n ...

  9. Jquery和JS获取Table中tr标签的值以及赋值问题

    Jquery和JS获取Table中tr标签的值以及赋值 业务场景:根据 类型,给比例赋值,是当前td比例动态变化:废话少说,直接上代码 1.以下是HTML代码; <div class=" ...

最新文章

  1. 刚刚!我被产品小姐姐的笔记本深深吸引了....
  2. undo系统参数详解
  3. UA CSC696H 强化学习理论选讲1 强化学习概览
  4. linux下安装mysql57_Linux——CentOS7之mysql5.7安装与配置
  5. java方法怎么写_关于java方法,这几题该怎么写
  6. linux 定时器和sleep,linux中sleep函数的使用和总结
  7. 和菜鸟一起学linux内核源码之基础准备篇
  8. 你必须很努力,才能看上去毫不费力
  9. zoj 1088 System Overload
  10. 用c语言写代码_教你如何用android mvp分层架构优雅写代码
  11. EXP-00056遇到Oracle错误1455问题解决办法
  12. 看完微软大神写的 求平均值代码,我意识到自己还是 too young 了
  13. 【图像隐写】基于matlab GUI LSB+DWT数字水印嵌入+提取+检测+攻击【含Matlab源码 833期】
  14. 有哪些让程序员受益终生的建议
  15. .NET 使用MD5加盐加密
  16. 服务器非80端口无法访问网页,使用非80网站访问服务器web提示需要备案呢?
  17. 黑鲨会升级鸿蒙吗,黑鲨游戏手机2系统更新好吗?
  18. c语言mac地址加冒号,如何通过在Excel中添加冒号来格式化单元格中的mac地址?
  19. Jenkins+Pipline+Docker 自动部署SpringBoot项目流程
  20. Yolov3模型使用教程

热门文章

  1. 字符串除去数字和小数点以外的内容
  2. 利用tushare画股票K线图
  3. Android加载网络图片资源
  4. 2019年天梯真题L1
  5. CANopen总线协议简介
  6. 2.初识Abp(Postgresql)
  7. 谭校长的新歌《读爱》
  8. mysql按专业人数升序查询_sql 语句排序 在查询结果中按人数降序排列,若人数相同,则按课程号升序排列?...
  9. 计算机项目符号操作,【电脑常识:使用快捷键快速应用项目符号】- 环球网校...
  10. Gio.js使用教程