4

有时我们必须做一个 Model instance.save() 不管某些字段是否改变,只是为了安全和快速开发。

  1. django ORM 有多贵?
  2. 总是发送信号?
  3. 执行任何 SQL 查询?

我用 django 调试工具栏测试了 10 .save() 在模型中的任何内容发生变化的不同点,并且日志没有注册 sql 查询。

其他方式来测试它或一些文章?

先感谢您。

4

1 回答 1

2

我不完全确定您的应用程序如何处理这个问题。

但我进行了一个小测试:

a = Blog.objects.get(pk=1)

for b in range(1, 100):
    a.save()

这给了我一个结果:

87.04 毫秒(201 个查询)

还要注意保存将执行两个查询:

SELECT ••• FROM `fun_blog` WHERE `fun_blog`.`id` = 1 LIMIT 1

UPDATE `fun_blog` SET `title` = 'This is my testtitle', `body` = 'This is a testbody' WHERE `fun_blog`.`id` = 1
于 2012-12-06T20:30:03.453 回答