之前学习的orm的操作类似:

create
delete
update
filter/all
exclude
values
values_list
get
first
last
order_by

补充两个

only  和 defer

从字面意思就可以得到 only仅仅查找这个内容

only()-------> 仅仅查找它所规定的

user表内有有id  name  pwd  这三列

比如查询user表内 id 和name这两列的内容

user_lidt = User.objects.all().only('id','name')
defer()   -------> 查询排除选中的所有内容

查询排除pwd'的所有内容

user_list = User.objects.all().defer('pwd')

当你在数据库中设置了一个字段可以选择对应的汉字的时候:

    valid_period_choices = ((1, '1天'), (3, '3天'),
(7, '1周'), (14, '2周'),
(30, '1个月'),
(60, '2个月'),
(90, '3个月'),
(180, '6个月'), (210, '12个月'),
(540, '18个月'), (720, '24个月'),
)

就是给valid_period这个字段用choice设置一个可以选择的信息

这个时候我们取值的时候如果想取初对应的字段的中文 就可以用get_字段_display()这个方法来取对应的值

get_字段_display()

取上面的字段的对应的中文

对象.get_valid_period_display()

related_name

字段中可以加一个属性related_name  这个是关联其他表并且给自己的表 起名字的属性  以后外键表查找的时候就使用related_name 后面的值来查找

chapter = models.ForeignKey("CourseChapter", related_name='coursesections')

外键表CourseChapter  查找这个表就使用  releted_name 后面的值来查找

并且关联表的时候也可以使用Content_Type来进行查找使用

ORM的补充的更多相关文章

  1. Django ORM操作补充

    操作补充 only 只取某些去除其他 defer 去除某些取其他 # 需求: 只取某n列 queryset=[ {},{}] models.User.objects.all().values( 'id ...

  2. ORM 效率补充

    1.only  defer only: 获取数据表中某列或多列的值,注意获取的是对象,如果查询字段不是括号内的,效率反而变低 defer: 获取除了某列或某几列的数据,注意获取的是对象 User.ob ...

  3. Dapper小型ORM的使用(随便吐槽下公司)

    近来公司又有新项目要做,之前做项目用过蛮多ORM,包括ef,NetTiers,ServiceStack.OrmLite等ROM,每种ORM都有一定的坑(或者说是使用者的问题吧~~).用来用去都觉的有一 ...

  4. Django知识补充

    目录 一.文件上传 二.Models补充 三.Django总结 一.文件上传 1.通过form表单或者通过From类上传 views.py from django.shortcuts import r ...

  5. [oldboy-django][2深入django]ORM操作

    推荐学习博客:http://www.cnblogs.com/wupeiqi/articles/6216618.html 需求: 汇总django orm操作,代替原生mysql语句来操作数据库:里面内 ...

  6. Python Django系统

    本节内容 路由系统,视图函数,模板引擎,ORM操作 FBV和CBV ORM操作补充 Cookie和Session Ajax入门 1.  Django基本内容整理 1.1 路由系统 Django中路由系 ...

  7. Python 目录指引

    1.0 Python 基础整合 1.1 变量 1.2 数据类型 1.3 基础语法 1.4 文件操作 1.5 函数 1.6 生成器 1.7 迭代器 1.8 装饰器 1.9 字符集 2.0 Python ...

  8. python之面试复习

    待整理:osi七层协议,tcp三次握手四次挥手 1.Http协议(超文本传输协议) 是一种传输数据的格式. 建立在TCP之上 一次请求一次响应,然后断开连接(短连接,无状态) 请求:请求头 \r\n\ ...

  9. 朱晔的互联网架构实践心得S2E1:业务代码究竟难不难写?

    注意,这是我的架构实践心得的第二季的系列文章,第一季有10篇你也可以回顾. 见https://www.cnblogs.com/lovecindywang/category/1296779.html 最 ...

随机推荐

  1. Ubuntu16.04 下如何安装搜狗拼音输入法【亲测有效】

    Ubuntu16.04 下如何安装搜狗拼音输入法[亲测有效]   一.添加fcitx键盘输入法系统[系统默认是iBus] 1.将下载源添加至系统源: sudo add-apt-repository p ...

  2. Javac源码解读-书目录

    1.Javac编译器 (1)Javac编译器介绍(主要介绍如何从java源代码到class的一个转换过程) (2)Javac的源码(说明其中哪个功能由哪个主要的类来完成) (3)Javac支持的命令及 ...

  3. JavaScript设计模式-15.适配器模式

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  4. 深度学习(八) Batch Normalization

    一:BN的解释:  定义: 顾名思义,batch normalization嘛,就是“批规范化”咯.Google在ICML文中描述的非常清晰,即在每次SGD时,通过mini-batch来对相应的act ...

  5. json-c开发指南

    网上看到的一片关于json-c的文章.收藏一下,忘记了出处,尽请作者谅解. JSON c语言开发指南   1.    引言 本文档是基于json-c 库对数据交换进行开发所编写的开发指南,及详细解释j ...

  6. 仿58同城UITableViewCell动画

    之前看58同城APP有一个页面中Cell依次从右向左移动,今天试着做了下. 在做的过程中也遇到了几个小的问题,也算是注意点吧. 1.Cell出现时每个Cell的动画时间一样,导致没有依次移动的效果. ...

  7. Java 防SQL注入过滤器(拦截器)代码

    原文出自:https://blog.csdn.net/seesun2012 前言 浅谈SQL注入:        所谓SQL注入,就是通过把SQL命令插入到Web表单提交或输入域名或页面请求的查询字符 ...

  8. 【转】前端——实用UI组件库

    Angular UI 组件 ngx-bootstrap 是一套Bootstrap 组件 官网:https://valor-software.com/ngx-bootstrap/#/ github: h ...

  9. 为什么会出现__pycache__文件夹?

    为什么会出现__pycache__文件夹? python解释器会将 *.py 脚本文件进行编译,并将编译结果保存到__pycache__目录中. 下次再执行工程时,若解释器发现这个 *.py 脚本没有 ...

  10. unity assetStore 常用插件

    常用插件 20180723============= 教程类 =============<Mecanim Example Scenes > 官方示例场景<Surivial Shoot ...