Django(10)ORM模型介绍
2021-05-15 14:10
429 查看
前言
随着项目越来越大,采用写原生SQL的方式在代码中会出现大量的SQL语句,那么问题就出现了:
- 1.SQL语句重复利用率不高,越复杂的SQL语句条件越多,代码越长。会出现很多相近的SQL语句。
- 2.很多SQL语句是在业务逻辑中拼出来的,如果有数据库需要更改,就要去修改这些逻辑,这会很容易漏掉对某些SQL语句的修改。
- 3.写SQL时容易忽略web安全问题,给未来造成隐患。SQL注入。
所以我们采用ORM模型
ORM模型介绍
orm全称
Object Relational Mapping,中文叫做
对象关系映射,通过ORM我们可以通过类的方式去操作数据库,而不用再写原生的SQL语句。通过把表映射成类,把行作实例,把字段作为属性,ORM在执行对象操作的时候最终还是会把对应的操作转换为
数据库原生语句
ORM的优点
- 易用性:使用ORM做数据库的开发可以有效的减少
重复SQL语句
的概率,写出来的模型也更加直观、清晰。 - 性能损耗小:ORM转换成底层数据库操作指令确实会有一些开销。但从实际的情况来看,这种性能损耗很少(不足5%),只要不是对性能有严苛的要求,综合考虑开发效率、代码的阅读性,带来的好处要远远大于性能损耗,而且项目越大作用越明显。
- 设计灵活:可以轻松的写出复杂的查询。
- 可移植性:Django封装了底层的数据库实现,支持多个关系数据库引擎,包括流行的
MySQL
、Oracle
、PostgreSQL
和SQLite
。可以非常轻松的切换数据库。
ORM的实现过程
(1)配置目标数据库,在
setting.py中设置配置属性
(2)构建虚拟对象数据库,在App的
model.py文件中以类的形式定义模型
(3)通过模型在目标数据库中创建对象的数据表
(4)在视图函数中使用模型来实现目标数据库的读写操作
相关文章推荐
- Django--ORM模型Field介绍及外键使用
- web框架开发-Django模型层(1)之ORM简介和单表操作
- django ORM数据模型的定义
- Django中ORM模型总结(二)[模型类的对应关系,模型类的属性,字段类型]
- django模型orm进行group by
- Django模型(model)详细介绍1
- Django流程(Django虚拟环境的搭建,项目创建以及模板、视图、模型的简单介绍)
- django 学习-10 Django多对多关系模型
- Django之ORM介绍
- Django模型系统——ORM表结构对应关系
- 10)django-ORM(创建,字段类型,字段参数)
- 【Django在线教育平台】10.机构讲师、机构介绍详情页
- Django--数据库操作--ORM模型常用操作
- Django ORM Cookbook精选摘录(下) 保持不同模型数据同步更新,使用信号和重写save方法哪个好?...
- python之路_django ORM模型(单表)(二)
- django的ORM模型的实现原理
- Django--数据库操作--ORM模型创建和映射
- django框架面向对象ORM模型继承用法实例分析
- python之路_django ORM模型(单表)(一)
- [Django实战] 第6篇 - 模型(ORM)