我需要知道删除模型实例的最佳方法。
实例删除示例:
myModel = MyModel.objects.get(id=1)
myModel.delete()
Queryset delete 示例:
MyModel.objects.filter(id=1).delete()
实例与 queryset 删除技术有何区别? 使用 queryset 而不是实例删除是否有任何副作用,反之亦然?
P.S。如果您认为您的答案是特定于版本的,请假设我要求Django> = 1.6
。
答案 0 :(得分:3)
实例删除涉及两个查询:一个用于选择对象。其他用于删除对象。
虽然Queryset删除只涉及一个查询:删除。
实例删除的副作用:myModel.pk
(== myModel.id
正常)在删除后变为None
。