Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/20.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/powershell/12.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
在Django中保存多个依赖对象的更有效方法_Django_Django Models_Django Views - Fatal编程技术网

在Django中保存多个依赖对象的更有效方法

在Django中保存多个依赖对象的更有效方法,django,django-models,django-views,Django,Django Models,Django Views,在一个视图中,我必须创建3个相互依赖的对象。我的猜测是,执行3个数据库查询效率极低。有更好的方法吗 character = char(user = request.user, race = form.clean_race()) character.save() colony = colony(char = character) colony.save() buildings = colony_building(colony = colony, building_5 = 1) building

在一个视图中,我必须创建3个相互依赖的对象。我的猜测是,执行3个数据库查询效率极低。有更好的方法吗

character = char(user = request.user, race = form.clean_race())
character.save()

colony = colony(char = character)
colony.save()

buildings = colony_building(colony = colony, building_5 = 1)
buildings.save()

`

假设这些是不同的模型,那么每个模型都需要一个SQL查询,因为SQL的
INSERT
只能针对一个表。因此,对3个模型执行3个查询对我来说是可以的。

假设它们是不同的模型,每个模型需要一个SQL查询,因为SQL的
INSERT
只能针对一个表。因此,对3个模型进行3次查询对我来说是可以的。

如何通过3次查询在三个表中分别插入一条记录是低效的?SQL中是否有一个查询可以更有效地执行此操作?如何在三个表中分别插入一条记录的3个查询是低效的?SQL中是否有查询可以更有效地执行此操作?