迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 编程语言 > Python >

在 Django 中创建对象

作者:迹忆客 最近更新:2023/05/04 浏览次数:

本文解释了什么是模型以及如何使用 create() 方法创建对象。 我们将看到如何在 Django 中使用 save() 方法。


使用 Django 中的 create() 方法创建对象

Django 中的模型是表示数据库中单个表的类。 我们可以让我们的应用程序中的每种类型的数据都由其模型表示。

然后每个模型映射到数据库中的单个表。

例如,如果我们有四个模型、文章、用户、作者和书籍,那么数据库中就有四个表。 单个模型映射每个表。

让我们看看如何在数据库中创建模型的对象。

我们将使用 Python shell 创建新对象。 我们需要使用管理员来确保我们处于 Django 项目的根目录。

ls

输出:

db.sqlite3    manage.py    products    trydjango

现在,我们要运行另一个命令。 因此,当我们运行此命令时,所有 Django 项目的内容都将在 Python 解释器中运行。

当我们按下 Enter 时,我们将看到一个普通的 Python 解释器,但这不是因为我们可以运行以下命令。

python manage.py shell

我们已经从 models.py 文件中导入了 Product 模型。 如果我们按 Enter,我们可以在当前 shell 中使用我们的 Product 模型。

from products.models import Product

我们有内置的 Django 命令来从定义的模型中检索所有对象。

Product.objects.all()

现在,我们可以看到只有一项,那是因为我们只保存了一项。

<QuerySet[<Product: Product object (1)>]>

如果我们想看到更多的对象,我们只需要使用下面的命令创建更多的对象。

Product.objects.create()

假设我们的 Product 模型有四个字段。 这四个字段必须传入 create() 方法才能创建新对象。

Django 创建对象 - 示例 1

让我们通过编写以下命令来创建一个新对象。

Product.objects.create(title="New product",description="Another one", price=1222,summary="The best product")

写完这条命令后,当我们按下回车键时,它会创建一个新对象。

<Product: Product object (2)>

所以现在,如果我们尝试检索所有对象,我们将看到另一个新创建的项目。

Product.objects.all()

现在,我们可以看到查询列表的第二项。

<QuerySet[<Product: Product object (1)>,<Product: Product object (2)>]>

当我们转到管理面板时,我们将在那里看到新对象。

现在,我们将看看如何使用 save() 方法。 假设我们有如下代码,我们需要保存定义模型的所有字段。

我们需要传递模型类中的所有字段,并使用 save() 方法创建一个对象来保存它。

Django 创建对象 - 示例 2

我们在上面的代码中定义了 product_id,所以现在我们可以使用它的 ID 访问产品。 在 product_id 中,我们将 primary_key 设置为 True。

save() 方法适用于两种情况,这意味着如果给定的 product_id 已存在于数据库中,则该对象将使用不同的字段值进行更新。

如果 save() 方法没有在 product_id 中找到设置为 True 的 primary_key 属性,或者数据库中不存在给定的 ID,则会产生错误。 使用 Product.objects.create(),我们只能插入新对象。

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

Django 中的 Slug

发布时间:2023/05/04 浏览次数:173 分类:Python

本篇文章旨在定义一个 slug 以及我们如何使用 slug 字段在 Python 中使用 Django 获得独特的帖子。

Django ALLOWED_HOSTS 介绍

发布时间:2023/05/04 浏览次数:181 分类:Python

本文展示了如何创建您的 Django 网站,为公开发布做好准备,如何设置 ALLOWED_HOSTS 以及如何在使用 Django 进行 Web 部署期间修复预期的主要问题。

Django 中的 Select_related 方法

发布时间:2023/05/04 浏览次数:129 分类:Python

本文介绍了什么是查询集,如何处理这些查询以及我们如何利用 select_related() 方法来过滤 Django 中相关模型的查询。

在 Django 中上传媒体文件

发布时间:2023/05/04 浏览次数:198 分类:Python

在本文中,我们简要介绍了媒体文件以及如何在 Django 项目中操作媒体文件。

Django 返回 JSON

发布时间:2023/05/04 浏览次数:106 分类:Python

在与我们的讨论中,我们简要介绍了 JSON 格式,并讨论了如何借助 Django 中的 JsonResponse 类将数据返回为 JSON 格式。

在 Django 中为多项选择创建字段

发布时间:2023/05/04 浏览次数:75 分类:Python

在本文中,我们将着眼于为多项选择创建一个字段,并向您展示如何允许用户在 Django 中进行多项选择。

避免在 Django 中创建重复对象

发布时间:2023/05/04 浏览次数:71 分类:Python

本文的主要目的是了解 Django 中的 get_or_create() 方法。 它是一种用于避免查询集中出现冗余字段的方法。

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便