如何删除Django模型中的记录?

2024-04-26 00:01:41 发布

您现在位置:Python中文网/ 问答频道 /正文

我想删除一个特定的记录。例如

delete from table_name where id = 1;

我怎样才能在一个django model中做到这一点?


Tags: djangonamefromidmodel记录tablewhere
3条回答

有两种方法:

直接删除:

SomeModel.objects.filter(id=id).delete()

要从实例中删除它:

instance = SomeModel.objects.get(id=id)
instance.delete()

沃尔夫提供了一个很好的答案集中代码。让我把官方的doc贴在这里,供大家参考。

MyModel.objects.get(pk=1).delete()

如果具有指定主键的对象不存在,这将引发异常,因为它首先尝试检索指定的对象。

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

如果具有指定主键的对象不存在并且它直接生成查询,则不会引发异常

DELETE FROM my_models where id=1

相关问题 更多 >