Salut,
 
j'ai un problème d'organisation de mon code et d'accès à certaines de mes données. Mon projet est un truc web qui manipule une base de données. Pour l'instant, c'est organisé comme ça (c'est sujet à modifications d'ailleurs, chuis pas fixé la dessus) :
 bli/
    __init__.py
    Base.py
    blu.py
    blo.py
    etc.py
    
 config.py
 tests.py
   | 
Le contenu du répertoire /bli/ contient des classes qui vont interagir avec la base de données (en gros, un truc du genre Active Record). Base est la super-classe à partir de laquelle dérive toutes les autres.
 
J'ai commencé à écrire mes tests unitaires (dans /tests.py) pour tester mon truc et config.py contient mes options de configuration (paramètre de connection à la BD, etc.) Ca ressemble à ça :
  def testBluLoad (self):
  	"""Test le chargement d'une carte déjà existante."""
  	b1 = bli.blu()
  	b1.name = "Home One"
  	b1.id_truc = 1
  	b1.machin = 1
  	b1.save()
      	b2 = bli.blu(b1.id)
  	self.assertEqual(b1.id, b2.id)
  	self.assertEqual(b1.name, b2.name)
  	self.assertEqual(b1.id_truc, b2.id_truc)
  	self.assertEqual(b1.machin, b2.machin)
   | 
Le problème, c'est la connection SQL. J'en ai forcément besoin dans mes classes de /bli/ . Actuellement, elle est ouverte dans tests.py, et à part la passer en paramètre à dans chaque constructeur de chaque classe ( 
 ), j'vois pas trop 
Je me sers de pyscopg (interface pour PostgreSQL), je l'ai pas wrappé du tout.
 
Ce que j'aimerais, c'est ouvrir une connection globale à la BD quelque part (à définir 
 ), et pouvoir la récupérer automatiquement dans le constructeur de Base par ex., sans que j'ai à la passer de partout (éventuellement, y'aura d'autres trucs qui fonctionneront de la même manière).
 
Voilà, donc c'est plus un problème d'organisation que j'ai 
Tout aides & conseils sont les bienvenues ![[:romf] [:romf]](https://forum-images.hardware.fr/images/perso/romf.gif)