python - MongoEngine 改变数据库

标签 python mongodb flask mongoengine

由于我的项目设置(与 flasky 相同),当我运行我的 python 测试(line 34)时,会在我的配置设置为测试之前创建到开发数据库的连接(第 11 行 here) ).这会导致我的测试出现问题,因为它们应该在干净的数据库上运行。

网上找了一下,只找到switch_db的描述但这不是我需要的。我需要更改我的连接正在使用的数据库,或者删除连接并创建一个新连接。我找不到一种方法来做这些中的任何一个..我错过了什么吗?我的连接是使用这行代码简单初始化的,在我的主应用程序目录的 init.py 中。

from mongoengine import connection
db_name = 'name_from_config'
connection(db_name)

最佳答案

在mongoengine中是这样的

from flask.ext.mongoengine import mongoengine
mongoengine.register_connection("alias1", "db1")
mongoengine.register_connection("alias2", "db2")

在model中,在meta中添加entry或者使用queryset的switch方法

similar question at stackoverflow

关于python - MongoEngine 改变数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29324114/

相关文章:

mongodb - 使用 Mongodb 将 AWS Amplify 和 App Sync 与现有节点服务器结合使用

java - 如何以 ManyToMany (RDBMS) 的形式加入两个集合 spring-data-mongodb

mongodb - MongoExport 错误 - 无法解码字符串

python - 端口 443 上的 websocket 与 kubernetes 下的/socket.io 不工作

api - 使用适当的消息解析 Flask Restful 请求

python - 使用 Reactjs 和 Flask 上传文件

python - 如何升级到 Google-Colab 'permanent' 中的 python 包?

python - Django 模型 : How to only access fields related to a specific user from another model

python - 通过比较两个文档的字段值来定义 Firestore 查询

python - 如何找到字符串中任何一组字符的第一个索引