Mongoengine objects是否查询所有记录

发布于 2022-09-02 10:17:59 字数 446 浏览 18 评论 0

现象:
我建立了一个集合对象:

Class A(Document):
    name = StringField()

我用一条语句查询:

A.obejcts(name__contains='tmp').limit(10).skip(20)

debug的时候我发现如下问题
1: A.objects查出了mongo中的所有记录;
2: 经过name__contains='tmp'过滤了一部分,经过limit和skip分别又过滤了一部分;

我的疑惑是:
1:A.objects是不是真的从mongo中拿出了所有的记录然后再做查询。
2:能不能打印出mongoengine的执行语句什么的。
求教。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

桃扇骨 2022-09-09 10:18:00
queryset = Document.objects(field__lte=5)
print queryset._query
queryset.explain()

http://stackoverflow.com/questions/29070176/how-do-i-see-mongoengine-built-query

节枝 2022-09-09 10:18:00

应该是的,就相当于mongo shell中的db.collection.find()

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文