当前位置 博文首页 > Django中ORM的基本使用教程

    Django中ORM的基本使用教程

    作者:JonnyJiang-zh 时间:2021-02-19 21:03

    前言

    Django框架功能齐全自带数据库操作功能,本文主要介绍Django的ORM框架

    到目前为止,当我们的程序涉及到数据库相关操作时,我们一般都会这么搞:

    • 创建数据库,设计表结构和字段
    • 使用 MySQLdb 来连接数据库,并编写数据访问层代码
    • 业务逻辑层去调用数据访问层执行数据库操作

    ORM

    orm(object-relation-mapping)对象关系映射,即用对象来表示关系数据库中的表:

    类 --> 表,

    对象-->一行数据

    对象的属性-->一行属性的一个字段

    比如说一个用户信息表:

    class User:
     def __init__(self,name,age):
      self.name = name
      self.age = age

    这样我们就定义了一个类,有name和age属性,之后我们每创建一个对象都有一个自己的name和age值,就好比我们创建了一个表格,有name和age字段,每一行数据都有自己的name和age。

    那么我们怎么在Django中应用呢,首先,Django使用了MVT模型,即:模型、视图、模板,相较于MVC(模型-视图-控制器)而言,其中MVT中的T(templates)和MVC中的V(views)都表示一种可以看得见的一种数据渲染图,而MVT(views)和MVC中的C(controls)都表示一种逻辑,即当浏览器请求的时候服务器该怎么返回数据,最后,MVT中的M(models)和MVC中的M(models)都表示数据存储部分,即数据库。

    于是,如果我们需要创建表格就要创建类,就要在modles.py中创建,如下:

    from django.db import models
    
    # Create your models here.
    
    
    class User(models.Model):
     username = models.CharField(max_length=32)
     password = models.CharField(max_length=32)

    其中CharFiled相当于数据库中的varchar,与之对应的还要Decimal、Datatime等等。

    接下来就是我们要把数据存储在哪个数据库了,好在Django自己生成了一个 db.sqlite3 文件,那么接下来我们就要去setting.py文件中去配置数据库,如下:

    然后就需要打开我们的sqlite数据库文件看看了,这里,我们如果使用pycharm,可以按如下操作:

    点击侧边那里

    选择类型

    点击图标

    找到sqlite3文件然后应用。

    此时发现:

    中并没有user表,这时,我们需要再执行两条终端命令:

    打开终端

    第一条命令: python manage.py makemigration
    第二条命令: python manage.py migrate

    然后刷新:

    就可以看到表格了,双击就可以进行编辑啦!!!

    js