Django QuerySet delete()什么时候触发?

时间:2013-09-06 05:59:22

标签: django django-queryset

我想从DB中的表中删除所有记录,并在每次运行python脚本时重新填充。

据我所知,当你创建一个django查询集时,它只是一个尚未在DB上触发的查询集,并且只有当我调用像len()或函数退出的函数时才会触发此查询集(在DB上执行)

obj = table.objects.filter(name="abc")

len(obj)

我的问题是

table.objects.all().delete()

django遇到.delete()或等待函数退出后,是否会对数据库触发查询?

1 个答案:

答案 0 :(得分:0)

如果autocommitTrue(默认),delete()会直接触发。

请注意,django 1.6对transactions有一些重大变化。