I'd been used to doing this in pymongo as a means of accessing a particular database:
import pymongo
connection = pymongo.MongoClient()
db = connection.DBNAME
then querying db.collectioname.find(), etc. However, I now want to be able to connect to databases named via variable, with an eye to looping over a series of databases. So something like:
dbname = 'DBNAME'
connection = pymongo.MongoClient()
db = eval('connection.' + dbname)
I have been taught that eval() is occasionally the devil and should be avoided. How can I do this with setattr() or other solution? Something like...
dbname = 'DBNAME'
connection = pymongo.MongoClient()
db = setattr(connection, '??name??', dbname)