dongzhaorui 3 年之前
父節點
當前提交
616844e8cc
共有 2 個文件被更改,包括 12 次插入5 次删除
  1. 11 5
      codes_hospital/utils/databases.py
  2. 1 0
      find_source/common/databases.py

+ 11 - 5
codes_hospital/utils/databases.py

@@ -2,6 +2,7 @@ import bson
 import pymongo
 import pymongo
 import redis
 import redis
 from elasticsearch import Elasticsearch
 from elasticsearch import Elasticsearch
+from pymongo.uri_parser import SCHEME
 from rediscluster import RedisCluster
 from rediscluster import RedisCluster
 
 
 from config.load import mongo_conf, redis_conf, es_conf, redis_startup_nodes
 from config.load import mongo_conf, redis_conf, es_conf, redis_startup_nodes
@@ -10,15 +11,20 @@ from config.load import mongo_conf, redis_conf, es_conf, redis_startup_nodes
 MONGO_URI_CLIENTS = {}    # a dictionary hold all client with uri as key
 MONGO_URI_CLIENTS = {}    # a dictionary hold all client with uri as key
 
 
 
 
-def mongo_client(cfg=None, host=None, port=None, fork=False, **kwargs):
-    if host is not None and port is not None:
-        uri = f'mongodb://{host}:{port}'
+def mongo_client(host=None, port=None, fork=False, **kwargs):
+    if host is None:
+        host = mongo_conf["host"]
+    if port is None:
+        port = mongo_conf["port"]
+
+    if host is not None and host.startswith(SCHEME):
+        uri = host
     else:
     else:
-        _cfg = (cfg or mongo_conf)
-        uri = f'mongodb://{_cfg["host"]}:{_cfg["port"]}'
+        uri = f'mongodb://{host}:{port}'
 
 
     if fork:
     if fork:
         return pymongo.MongoClient(uri, **kwargs)
         return pymongo.MongoClient(uri, **kwargs)
+
     global MONGO_URI_CLIENTS
     global MONGO_URI_CLIENTS
     matched_client = MONGO_URI_CLIENTS.get(uri)
     matched_client = MONGO_URI_CLIENTS.get(uri)
     if matched_client is None:
     if matched_client is None:

+ 1 - 0
find_source/common/databases.py

@@ -5,6 +5,7 @@ import requests
 from elasticsearch import Elasticsearch
 from elasticsearch import Elasticsearch
 from pymongo.collection import Collection
 from pymongo.collection import Collection
 from pymongo.uri_parser import SCHEME
 from pymongo.uri_parser import SCHEME
+
 from config.load import mongo_conf, redis_conf, es_conf, analyze_url
 from config.load import mongo_conf, redis_conf, es_conf, analyze_url
 
 
 # ---------------------------------- mongo ----------------------------------
 # ---------------------------------- mongo ----------------------------------