MongoDB支持在不同的数据库上创建不同的用户,即使这些用户的用户名相同。如果将要访问的数据库与用户所在的数据库不一致,而在连接时只配置将要访问的数据库,没有配置认证数据库,将产生认证错误。
需要通过 MONGODB_SETTINGS
变量配置 authentication_source
参数,指定用户所在的数据库,注:所在数据库是指创建该用户的数据库。
MONGODB_SETTINGS = {
'db': db_name,
'host': 'localhost',
'port': 27017,
'connect': True,
'username': 'test',
'password': '123456',
'authentication_source': user_creator
}