MongoEngine未指定集合名自动用perf_results,如何自定义集合名?
如何在MongoEngine中指定自定义集合名称
MongoEngine默认会将模型类名转换为小写复数形式作为MongoDB集合名称(比如PerfResult自动转为perf_results)。要指定自定义集合名,只需在你的Document模型类中添加meta字典,设置collection字段即可。
修改你的PerfResult类,示例如下:
class PerfResult(db.Document): release = db.StringField() cycle = db.StringField() device = db.StringField() results = db.DictField() # 自定义集合名称,替换成你想要的名称 meta = {'collection': 'custom_perf_results'} def to_json(self): # 注:原代码里的to_jason是拼写错误,建议改为to_json return { "release": self.release, "cycle": self.cycle, "device": self.device, "results": self.results }
将custom_perf_results替换为你实际需要的集合名称即可,MongoEngine会自动使用这个名称创建/关联对应的MongoDB集合。
内容的提问来源于stack exchange,提问作者Akshay J
相关产品推荐
相关产品推荐

