私は特定のデータベースにアクセスする手段としてpymongoでこれを行うことに慣れていました:
import pymongo
connection = pymongo.MongoClient()
db = connection.DBNAME
次に、db.collectioname.find()などをクエリします。ただし、一連のデータベースをループすることを目的として、変数を介して名前が付けられたデータベースに接続できるようにしたいと思います。だから次のようなもの:
dbname = 'DBNAME'
connection = pymongo.MongoClient()
db = eval('connection.' + dbname)
eval()は時々悪魔であり、避けるべきであると教えられてきました。setattr()または他のソリューションでこれを行うにはどうすればよいですか?何かのようなもの...
dbname = 'DBNAME'
connection = pymongo.MongoClient()
db = setattr(connection, '??name??', dbname)