「已注销」 2021-06-21 17:47 采纳率: 0%
浏览 14

MongoEngine,什么叫做原始查询?和一般的查询有什么区别呢?

Page.objects(__raw__={'tags': 'coding'})
  • 写回答

1条回答 默认 最新

  • 夏悠 2022-12-21 14:16
    关注

    MongoEngine 是一个 Python 库,可以帮助开发人员使用 MongoDB 数据库进行数据存储和查询。在 MongoEngine 中,原始查询指的是直接使用 MongoDB 的查询语言(即 MongoDB 的查询文档)进行查询,而一般的查询则是使用 MongoEngine 提供的高级查询接口,进行查询。

    原始查询和一般的查询的主要区别在于,原始查询需要使用 MongoDB 的查询文档来编写查询条件,而一般的查询则可以使用 MongoEngine 提供的高级查询接口来编写查询条件。

    例如,使用一般的查询,可以使用 MongoEngine 提供的 .find() 方法进行查询,代码示例如下:

    
    from mongoengine import Document, StringField
    
    class User(Document):
        name = StringField()
        age = IntField()
    
    users = User.objects(age__gt=18)
    
    
    

    使用原始查询,则可以使用 MongoEngine 提供的 .find() 方法的 raw 参数,将原始的查询文档作为参数传入,代码示例如下:

    
    from mongoengine import Document, StringField
    
    class User(Document):
        name = StringField()
        age = IntField()
    
    query = {'age': {'$gt': 18}}
    users = User.objects.find(raw=query)
    
    

    总的来说,使用原始查询可以提供更大的灵活性,但是也需要开发人员熟悉 MongoDB 的查询文档

    评论

报告相同问题?