Django ORM – 插入、更新和删除数据
Django让我们与它的数据库模型进行交互,即通过一个叫做ORM(Object Relational Mapper)的数据库抽象API来添加、删除、修改和查询对象。本文讨论了我们可以使用Django ORM进行的所有有用操作。
出于示范目的,我们将使用以下Django模型。
我们可以通过在我们的项目目录下运行以下命令来访问Django ORM。
这就把我们带到了一个交互式Python控制台。假设我们的模型存在于myProject/albums/models.py中,我们可以使用以下命令导入我们的模型。
插入对象
为了创建一个模型Album的对象并将其保存到数据库中,我们需要编写以下命令。
要创建一个Song模型的对象并将其保存到数据库中,我们需要编写以下命令。
检索对象
为了便于演示,我们再增加2个专辑记录。
为了检索一个模型的所有对象,我们编写以下命令。
输出是一个 QuerySet,或者说是一个符合查询的对象集。注意,所打印的名称是 str() 函数的输出。
我们还可以使用函数filter()、exclude()和get()来过滤查询。filter()函数返回一个QuerySet,其中有符合给定查询参数的对象。
exclude()函数返回一个查询集,其中的对象不是与给定查询参数相匹配的对象。
get()函数返回一个与给定查询参数匹配的单一对象。当查询返回多个对象时,它会给出一个错误。
修改现有对象
我们可以按以下方式修改一个现有的对象。
删除对象
要删除一个对象,我们需要编写以下命令。
要删除多个对象,我们可以使用filter()或exclude()函数,如下所示。