gpt4 book ai didi

python - Django 模型管理器 objects.create 文档在哪里?

转载 作者:IT老高 更新时间:2023-10-28 21:12:13 24 4
gpt4 key购买 nike

我总是读到我应该使用

model = Model(a=5, b=6)
model.save()

但我刚刚看到有一个管理器函数 create,因为我看到一个开源 django 应用程序正在使用它。

model = Model.objects.create(a=5, b=6)
print model.pk
1

那么建议使用它吗?还是仍然首选使用 .save 方法。我猜 objects.create 无论如何都会尝试创建它,而如果指定了 pk,save 可能会保存现有对象。

这些是我找到的文档:https://docs.djangoproject.com/en/dev/topics/db/queries/#creating-objects

最佳答案

p = Person.objects.create(first_name="Bruce", last_name="Springsteen")

相当于:

p = Person(first_name="Bruce", last_name="Springsteen") 
p.save(force_insert=True)

The force_insert means that a new object will always be created.
Normally you won’t need to worry about this. However, if your model contains a manual primary key value that you set and if that value already exists in the database, a call to create() will fail with an IntegrityError since primary keys must be unique. Be prepared to handle the exception if you are using manual primary keys.

关于python - Django 模型管理器 objects.create 文档在哪里?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9940674/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com