Django中使用ORM搭建数据库
2020-03-11付沛陈娜
付沛 陈娜
Django的MVC框架中包括一个重要的部分,就是ORM,它实现了数据模型与数据库的解耦,即数据模型的设计不需要依赖于特定的数据库,通过简单的配置就可以轻松更换数据库。
ORM是“对象-关系-映射”的简称,主要任务是:根据对象的类型生成表结构
将对象、列表的操作,转换为SQL语句;将SQL查询到的结果转换为对象、列表;Django中的模型包含存储数据的字段和约束,对应着数据库中唯一的表。
模型是项目的数据来源。每个模型都是一个Python类,并且映射到一个数据库表。模型的每个属性相当于数据库表的一个字段。使用模型对象可完成各种数据库表操作。定义模型就是实现一个django.db.models.Model类的子类,父类 Model 包含与数据库交互所需的全部机制。Django 通过模型在背后执行 SQL,在模型中定义属性,每个属性都映射到一个数据库列。模型的文件名称默认为models.py,也可使用其他名称。
实现步骤如下:
一、 搭建环境
(1)安装Python、Django 、SqliteStudio和VSCode。
二、 创建一个项目
(1)按Windows+R组合键启动程序,在弹出的对话框中输入cmd进入命令行中,输入D: 回车进入D盘下,输入以下指令创建MyTest项目:
django-admin startproject MyTest 回车
(2)项目创建完成后,接下来需要创建应用,一个项目可以包含多个应用。输入 以下指令进入MyTest项目下创建MyApp应用:
cd MyTest 回车
python manage.py startapp MyApp 回车
(3)输入以下指令打开VSCode(VSCode和.之间有一个空格)
code .
(4)找到Setting.py文件的INSTALL_APP中,最后一行中加入‘MyApp应用,并按Ctrl+S保存文件:
三、利用ORM创建模型
(1)打开models.py文件,添加如下代码并按Ctrl+S保存,表会自动添加一个主键列id:
(2)从菜单栏“查看----终端”打开终端,执行如下命令生成迁移文件并执行迁移
python manage.py makemigrations 回车
python manage.py migrate 回车
四、操作数据库数据
(1)输入以下命令进入当前项目的Shell交互环境:
python manage.py shell
(2)输入以下命令导入模型类:
from MyApp.models import MyData
(3)输入以下命令为表MyData插入4行数据,数据表如图所示
MyData.objects.create(question='test434',answer='aaa')
MyData.objects.create(question='Test4334',answer='xxx')
MyData.objects.create(question='test334334',answer='kkk')
MyData.objects.create(question='srtest478',answer='fff')
(4)輸入以下命令修改表MyData中id为8的行question值为abc,数据表如图所示
ds=MyData.objects.get(id="8")
ds.question="abc"
ds.save()
(5)输入以下命令删除表MyData中id为8的行,数据表如图所示
faqsdata.objects.get(id="8").delete()
(1. 武汉城市职业学院 湖北 武汉 430070;武汉软件工程职业学院 湖北 武汉 430205)