使用MongoEngine指定集合名称

Ree*_*ez0 7 python mongodb mongoengine

添加内容后,集合的名称将默认为类的名称。是否可以指定集合名称,或者我的方法错误?使用收集到的代码,默认情况下将其命名为“ mongo_engine_python”。

from mongoengine import *

try:
    connect(
        db='MongoEngine_Test',
        host="mongodb://localhost:27017/"
    )
    print("Connection successful")
except:
    print("Unable to connnect") 

class MongoEnginePython(Document):
    item_name = StringField(max_length=200, required=True)
    item_price = IntField(default=0)
Run Code Online (Sandbox Code Playgroud)

Ree*_*ez0 11

没有正确看文档。这里是:

2.3.4。文件收集

直接从Document继承的Document类将在数据库中拥有自己的集合。默认情况下,集合的名称是类的名称,转换为小写形式(因此在上面的示例中,集合称为页面)。如果您需要更改集合的名称(例如,将MongoEngine与现有数据库一起使用),请在您的文档上创建一个名为meta的类字典属性,并将collection设置为您希望文档类使用的集合的名称:

class Page(Document):
    title = StringField(max_length=200, required=True)
    meta = {'collection': 'cmsPage'}
Run Code Online (Sandbox Code Playgroud)