MongoEngine - 文档类


MongoEngine 被称为 ODM(对象文档映射器)。MongoEngine 定义了一个 Document 类。这是一个基类,其继承类用于定义存储在 MongoDB 数据库中的文档集合的结构和属性。该子类的每个对象在数据库中形成集合中的文档。

此 Document 子类中的属性是各种 Field 类的对象。以下是典型文档类的示例 -

from mongoengine import *
class Student(Document):
   studentid = StringField(required=True)
   name = StringField(max_length=50)
   age = IntField()
   def _init__(self, id, name, age):
      self.studentid=id,
      self.name=name
      self.age=age

这看起来类似于 SQLAlchemy ORM 中的模型类。默认情况下,数据库中Collection的名称是Python类的名称,并将其名称转换为小写。但是,可以在 Document 类的元属性中指定不同的集合名称。

meta={collection': 'student_collection'}

现在声明此类的对象并调用 save() 方法将文档存储在数据库中。

s1=Student('A001', 'Tara', 20)
s1.save()