J'ai un curseur ouvert sur ma base de données et j'ai une collection avec le nom client
dans la base de données. Quand je suis en train d'exécuter une requête commePyMongo ne reconnaît pas si le nom de la collection est client
def connect_to_primary(host, port):
"""this function is to connect to primary host in a replicaset"""
connection = MongoClient(str(host), int(port))
admindb = connection.admin
pri_host_port_con = admindb.command("isMaster")
primary_con = pri_host_port_con['primary']
pri_host_port = primary_con.replace(':', ' ').split()
pri_host = pri_host_port[0]
pri_port = pri_host_port[1]
final_connection = MongoClient(str(pri_host), int(pri_port))
return final_connection
connect_to_primary(host,port)[db].client.find({}).distinct('clientid')
Je reçois l'erreur suivante:
File "/usr/lib64/python2.7/site-packages/pymongo/database.py", line 1116, in __call__
self.__name, self.__client.__class__.__name__))
TypeError: 'Database' object is not callable. If you meant to call the 'find' method on a 'MongoClient' object it is failing because no such method exists.
ce qui ne va pas ici?