ORM介绍

酥酥 发布于 2021-09-18 935 次阅读


ORM介绍

一、模型层与ORM

必要条件:mysqlclient需要安装,python3-dev,default-libmysqlclient-dev安装

  • 创建数据库

    • 进入mysal数据库执行”create database数据库名default charset utf8

    • 通常数据库名跟项目名保持一致

  • settings.py里进行数据库的配置

    • 修改DATABASES配置项的内容, 由sqlite3变为mysql

二、什么是模型

模型是一个Python类,它是由django.db.models.Model派生出的子类。所以models.py中一定要继承这个类 模型类代表数据库中的一张数据表,模型类中每一个类属性都代表数据库中的一个字段。 模型是数据交互的接口,是表示和操作数据库的方法和方式

三、ORM

定义: ORM (Object Relational Mapping)即对象关系映射,它是一种程序技术,它允许你使用类和对象对数据库进行操作,从而避免通过SQL语句操作数据库

作用

  1. 建立模型类和表之间的对应关系,允许我们通过面向对象的方式来操作数据库。

  2. 根据设计的模型类生成数据库中的表格。

  3. 通过简单的配置就可以进行数据库的切换。

缺点

  1. 对于复杂业务,使用成本较高

  2. 根据对象的操作转换成SQL语句,根据查询的结果转化成对象,在映射过程中有性能损失.

类–数据表 类对象–数据行 类属性–字段

样例

模型类代码示例from_django.db import models
class Book(mode1s.Mode]):
title = mode1s.charFie1d("书名", max_1ength=50, defau1t=")
price = models.DecimalField('定价', max_digits=7, decimal_places=2,defau1t=0.0)