Django模型删除:实例与查询集删除

时间:2014-03-06 01:00:09

标签: python django django-models

我需要知道删除模型实例的最佳方法。

实例删除示例:

myModel = MyModel.objects.get(id=1)
myModel.delete()

Queryset delete 示例:

MyModel.objects.filter(id=1).delete()

实例 queryset 删除技术有何区别? 使用 queryset 而不是实例删除是否有任何副作用,反之亦然?

P.S。如果您认为您的答案是特定于版本的,请假设我要求Django> = 1.6

1 个答案:

答案 0 :(得分:3)

实例删除涉及两个查询:一个用于选择对象。其他用于删除对象。

虽然Queryset删除只涉及一个查询:删除。

实例删除的副作用:myModel.pk(== myModel.id正常)在删除后变为None