Django的orm需要注意的地方

Posted jackshi

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Django的orm需要注意的地方相关的知识,希望对你有一定的参考价值。

1. 区别

  基于对象的跨表查询相当于sql的子查询

  基于双下划綫的跨表查询类似于sql的联表查询

 

"""
正向查询 按外键字段
是否需要加all()

多对多的时候需要加all()
一对多和一对一都不需要加all()

外键字段关联的数据可能有多条还是单条
有多条则需要加all
没有则不需要

书写orm语句跟写sql语句一致 不要想着一次性将语句书写完成
写一步执行看结果 再接着写
"""
"""
反向查询 按表名小写
什么时候需要加_set.all()
当结果可能有多个的时候
不需要加_set.all()
当结构只会是一个的时候
"""

以上是关于Django的orm需要注意的地方的主要内容,如果未能解决你的问题,请参考以下文章

[TimLinux] Django 信号

使用Django1.10版本时,配置文件要注意的地方

如何在 Django Summernote 中显示编程片段的代码块?

使用 Django 模板作为片段

Django中的日期处理注意事项和自定义时间格式转换

django.core.exceptions.ImproperlyConfigured: Requested setting DEFAULT_INDEX_TABLESPACE的解决办法(转)(代码片段