使用MongoEngine指定集合名称

发布于 2021-01-29 16:25:47

添加内容后,集合的名称将默认为类的名称。是否可以指定集合名称,或者我的方法错误?使用我拥有的收藏夹的代码,默认情况下将其命名为“
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)
关注者
0
被浏览
50
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

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

    2.3.4。 文件收集

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

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


知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看