请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

Message.objects.all()问题

请问老师,Message.objects.all() 这条语句,视频上说只是返回一个queryset对象,并没有执行SQL操作,但我用bareTail跟踪时,发现它执行了一条select 语句,是返回21条记录,这是怎么回事呢?
图片描述

正在回答

1回答

bobby 2020-05-26 17:31:08

https://stackoverflow.com/questions/44234971/django-query-execute-behaviour 你可以看看这个 如果打印这个 应该是你对queryset执行了print或者for循环导致的

0 回复 有任何疑惑可以回复我~
  • 提问者 慕圣5332519 #1
    我没有执行了print或者for循环,但原因找到了,如果我在Message.objects.all() 这条语句上打了断点,程序停在断点上,我再按F8单步执行这条语句,就会执行一条select 语句,是返回21条记录,如果我正常运行,就不会执行select 语句,可能是因为pycharm为了跟踪需要,在它内部执行了select
    回复 有任何疑惑可以回复我~ 2020-05-27 10:49:20
  • bobby 回复 提问者 慕圣5332519 #2
    好的,
    回复 有任何疑惑可以回复我~ 2020-05-28 12:33:36

相似问题

登录后可查看更多问答,登录/注册

问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信