本文整理汇总了Python中pymongo.connection.Connection.from_uri方法的典型用法代码示例。如果您正苦于以下问题:Python Connection.from_uri方法的具体用法?Python Connection.from_uri怎么用?Python Connection.from_uri使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类pymongo.connection.Connection
的用法示例。
在下文中一共展示了Connection.from_uri方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: test_from_uri
# 需要导入模块: from pymongo.connection import Connection [as 别名]
# 或者: from pymongo.connection.Connection import from_uri [as 别名]
def test_from_uri(self):
c = Connection(self.host, self.port)
self.assertRaises(InvalidURI, Connection.from_uri, "mongodb://localhost/baz")
self.assertEqual(c, Connection.from_uri("mongodb://%s:%s" %
(self.host, self.port)))
c.admin.system.users.remove({})
c.pymongo_test.system.users.remove({})
c.admin.add_user("admin", "pass")
c.pymongo_test.add_user("user", "pass")
self.assertRaises(InvalidURI, Connection.from_uri,
"mongodb://foo:[email protected]%s:%s" % (self.host, self.port))
self.assertRaises(InvalidURI, Connection.from_uri,
"mongodb://admin:[email protected]%s:%s" % (self.host, self.port))
self.assertRaises(InvalidURI, Connection.from_uri,
"mongodb://user:[email protected]%s:%s" % (self.host, self.port))
Connection.from_uri("mongodb://admin:[email protected]%s:%s" % (self.host, self.port))
self.assertRaises(InvalidURI, Connection.from_uri,
"mongodb://admin:[email protected]%s:%s/pymongo_test" %
(self.host, self.port))
self.assertRaises(InvalidURI, Connection.from_uri,
"mongodb://user:[email protected]%s:%s/pymongo_test" %
(self.host, self.port))
Connection.from_uri("mongodb://user:[email protected]%s:%s/pymongo_test" %
(self.host, self.port))
示例2: check_health
# 需要导入模块: from pymongo.connection import Connection [as 别名]
# 或者: from pymongo.connection.Connection import from_uri [as 别名]
def check_health(self):
"""Returns the health of a both nodes in a Replica Pair connection in dictionary format.
{'db_master_url': 'host2', 'db_slave_url': 'host1',
'db_master_can_write': True, 'db_master_can_read': True,
'db_slave_can_read': True}
"""
master_connection = self._connection[self._database]
master = self._connection.host
id = str(uuid.uuid1())
test_data = {"_id": id, "date": datetime.datetime.now().microsecond}
db_master_can_write = False
try:
master_connection["friskmonitoring"].save(test_data)
db_master_can_write = master_connection["friskmonitoring"].find_one({"_id": id}) == test_data
except:
pass
finally:
master_connection["friskmonitoring"].remove({"_id": id})
db_master_can_read = False
try:
db_master_can_read = master_connection.collection_names() != []
except:
pass
db_slave_can_read = False
hosts = copy.copy(self._hosts)
if len(hosts) > 1:
hosts.remove(master)
slave = hosts[0]
slave_connection = None
try:
slave_uri = copy.copy(self._uri)
if "," in slave_uri:
slave_uri = slave_uri.replace(master, "").replace(",", "")
slave_uri = slave_uri.replace(master, "").replace(",", "")
slave_connection = mongo_con.from_uri(slave_uri, slave_okay=True)
db_slave_can_read = slave_connection[self._database].collection_names() != []
except:
pass
finally:
if slave_connection:
slave_connection.disconnect()
else:
slave = None
return {
"db_master_url": master,
"db_slave_url": slave,
"db_master_can_read": db_master_can_read,
"db_master_can_write": db_master_can_write,
"db_slave_can_read": db_slave_can_read,
}
示例3: __init__
# 需要导入模块: from pymongo.connection import Connection [as 别名]
# 或者: from pymongo.connection.Connection import from_uri [as 别名]
def __init__(self, uri, **kw):
self._uri = copy.copy(uri)
self._parse_uri(uri)
self._connection = mongo_con.from_uri(uri, **kw)