MongoEngine: 数据库名称不能包含字符“.”

MongoEngine: database names cannot contain the character '.'

我试图在我的 python 脚本中使用 mongoengine 插入文档,但它引发了这个异常

(<class 'pymongo.errors.InvalidName'>, InvalidName("database names cannot contain the character '.'",), <traceback object at 0x000000000844F708>)

连接字符串是 mongodb://user:pass@ds042487-a0.mlab.com:42487/db-name

关于如何解决这个问题有什么建议吗??

谢谢

您的数据库名称不应该 contain any of these characters: ' ', '.', '$', '/', '\', '\x00', '"'

检查你的数据库名称。 Mongo 驱动程序也强制执行此规则,因此您的数据库名称中带有点的可能性很小。

而不是使用

connect("mongodb://user:pass@ds042461-a0.mlab.com:42461/db-name")

使用这个

connect( db='db-name', username='user', password='pass', host='mongodb://user:pass@ds042461-a0.mlab.com:42461/db-name')

它对我有用。 :)

我使用 python driver 3.4v,它是共享集群格式的连接字符串,我尝试了不同的连接字符串,但它对我不起作用,这里是 mongoengine

Connection Strings URI Format