Hola!
Necesito acceder a dos bases de datos, pero sólo quiero que haya una conexión y un objeto. Por eso he pensado en el patrón singleton, porque quiero que todos accedan a la base de datos a través de un mismo objeto.
He estado buscando bastante al respecto, y la verdad es que no saca nada en claro, porque cada página que he buscado lo hace de una manera diferente.
Si alguien me puede decir cómo se hace un patrón singleton para acceder a la base de datos, le estaría muy agradecida.
Estoy intentando algo así:
Código:
class GestorBD(object):
instance=None
def __new__(cls, *args, **kargs):
if cls.instance is None:
cls.instance=object.__new__(cls, *args, **kargs)
return cls.instance
def conectar(self):
self.conexion=psycopg.connect("host='xxx.xxx.xxx.xxx' port= 'xxx' dbname='xx' user= 'xx' password= 'xx'")
def desconexion(self):
self.conexion.close()
def execute(self, consulta):
self.cursor=self.conexion.cursor()
self.cursor.execute(consulta)
registros=self.cursor.fetchall()
return registros
def modify(self, consulta):
self.cursor=self.conexion.cursor()
self.cursor.execute(consulta)
def commit(self):
self.conexion.commit()
Muchas gracias y un saludo!