Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何对许多对象使用bulk_create()来执行save()操作_Python_Django_Django Models_Transactions - Fatal编程技术网

Python 如何对许多对象使用bulk_create()来执行save()操作

Python 如何对许多对象使用bulk_create()来执行save()操作,python,django,django-models,transactions,Python,Django,Django Models,Transactions,我有很多对象要保存到数据库中,代码如下: def addSthGroups(groups): for group in groups: # each group is an object group.addSth() group.save() 现在,一个一个地保存所有对象需要很多时间。所以我的问题是:是否有一种更有效的方法来收集所有对象,只需调用一次save(),它可能会加快处理时间,正如我所知,bulk_create听起来很适合处理这种情况,有人能给

我有很多对象要保存到数据库中,代码如下:

def addSthGroups(groups):
    for group in groups:  # each group is an object
        group.addSth()
        group.save()

现在,一个一个地保存所有对象需要很多时间。所以我的问题是:是否有一种更有效的方法来收集所有对象,只需调用一次save(),它可能会加快处理时间,正如我所知,bulk_create听起来很适合处理这种情况,有人能给出一个代码示例吗?或者任何其他好的建议?

假设模型名为
Group
,您只需执行
Group.objects.bulk\u创建(组)

bulk\u create
不会调用
save()
。引自django:

不会调用模型的
save()
方法,并且
pre_save
post_save
将不发送信号


谢谢您的回复,save()在哪里。它与bulk_create()集成了吗?所以现在我不能使用bulk_create收集所有对象,只调用save()一次?你还有别的建议吗?谢谢。为什么要调用
save()
?您不需要调用
save()
bulk\u create
将一次性创建所有内容。我不确定,django新手。我为每个对象调用addSth(),然后我应该将新对象保存到数据库中,固定代码如下:
def addSthGroups(groups):
save\u list=[]
对于组中的组:
group.addSth()
save\u list.append(group)
adgroup.objects.bulk\u创建(save\u list)
我没有您的环境,因此无法为您试用。您应该自己尝试一下,并在stackoverflow上发布问题,如果您有任何问题,人们会非常乐意帮助您。