Django-ORM入门

Object Relational Mapping(ORM)

ORM简介

    ROM(Object Relational Mapping)对象关系映射,模式是一种为了解决面向对象与关系数据库存在的互不匹配的现象的技术.

    ORM是通过使用描述对象和数据库之间映射的元数据,将程序中的对象自动持久化到数据库中.

    ORM在业务逻辑层和数据库之间充当了中间件桥梁的作用.

    ORM中的类对应数据库中的表.

    ORM中的属性对应数据库中的字段.

    ORM中的对象对应数据库中的数据行.

ORM优势

     ORM解决的主要问题是对象和关系的映射.他通常把一个类和一个表一一对应,类的每个实例对应表中一条记录,类的每个属性对应表中的每个字段.

    ORM提供了对数据库的映射,不用直接编写SQL代码,只需向操作对象一样从数据库操作数据.

   让开发人员专注业务逻辑的处理,提高开发效率.

    开发效率高,容易掌握,容易移植.

Django中的ORM

Django项目中使用MySQL数据库

1. 在Django项目中的settings.py文件中,配置数据库连接信息,数据库需要提前创建:

# 所有跟数据库相关的配置
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',  # 告诉Django要连接的MySQL数据库
        'NAME': 'orm01',                       # 要连接的数据库名称
        'HOST': '172.16.0.200',                # 要连接的数据库地址
        'PORT': 3306,                          # 要连接的数据库端口
        'USER': 'root',                        # 要连接的数据库用户
        'PASSWORD': '123456',                  # 要连接的数据库密码
    }
}

2. 在Django项目中__init__.py文件中写如下代码,告诉Django使用pymysql模块连接MySQL数据库.

import pymysql

pymysql.install_as_MySQLdb()Model

Model

   在Django中model是你数据的单一,明确的信息来源.它包含了储存的数据和重要字段的行为.一个木星(model)映射到一个数据库表.

基本情况:

  • 每一个模型都是一个 Python 类,它是 django.db.models.Model的子类.
  • 模型的每个属性都代表一个数据库字段.
  • Django提供自动生成的数据库访问API,官方文档连接.

ORM操作

    1. 在 app 下 models.py 文件中编写要创建的表及字段.

from django.db import models

# Create your models here.
class UserINFO(models.Model):
    id = models.AutoField(primary_key=True) # ID 自增主键字段.
    name = models.CharField(max_length=20)
    pwd = models.CharField(max_length=20)

 2. 执行命令操作数据库变更 

 

1. 生成数据库同步脚本,生成在app下migrations文件夹下
python manage.py makemigrations

2. 读取变更记录在数据库中执行
python manage.py migrate

  

 

posted @ 2020-03-09 21:27  闫世成  阅读(139)  评论(0)    收藏  举报