在 Django 中创建对象
本文解释了什么是模型以及如何使用 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()
方法才能创建新对象。
让我们通过编写以下命令来创建一个新对象。
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()
方法创建一个对象来保存它。
我们在上面的代码中定义了 product_id,所以现在我们可以使用它的 ID 访问产品。 在 product_id 中,我们将 primary_key 设置为 True。
save()
方法适用于两种情况,这意味着如果给定的 product_id 已存在于数据库中,则该对象将使用不同的字段值进行更新。
如果 save()
方法没有在 product_id 中找到设置为 True 的 primary_key 属性,或者数据库中不存在给定的 ID,则会产生错误。 使用 Product.objects.create()
,我们只能插入新对象。
相关文章
Pandas DataFrame DataFrame.shift() 函数
发布时间:2024/04/24 浏览次数:133 分类:Python
-
DataFrame.shift() 函数是将 DataFrame 的索引按指定的周期数进行移位。
Python pandas.pivot_table() 函数
发布时间:2024/04/24 浏览次数:82 分类:Python
-
Python Pandas pivot_table()函数通过对数据进行汇总,避免了数据的重复。
Pandas read_csv()函数
发布时间:2024/04/24 浏览次数:254 分类:Python
-
Pandas read_csv()函数将指定的逗号分隔值(csv)文件读取到 DataFrame 中。
Pandas 多列合并
发布时间:2024/04/24 浏览次数:628 分类:Python
-
本教程介绍了如何在 Pandas 中使用 DataFrame.merge()方法合并两个 DataFrames。
Pandas loc vs iloc
发布时间:2024/04/24 浏览次数:837 分类:Python
-
本教程介绍了如何使用 Python 中的 loc 和 iloc 从 Pandas DataFrame 中过滤数据。
在 Python 中将 Pandas 系列的日期时间转换为字符串
发布时间:2024/04/24 浏览次数:894 分类:Python
-
了解如何在 Python 中将 Pandas 系列日期时间转换为字符串