[Python] L'uovo e la gallina

Alessandro Dentella sandro a e-den.it
Mar 11 Nov 2008 00:23:36 CET


Ciao,

  avevo due pacchetti differenti "debug" e "sqlkit". Sqlkit ha una classe
  che ha una metaclasse in debug, per soli scopi di sviluppo.

  La metaclasse che sfrutta la ricetta 198078 di ASPN aggiunge una parte di
  log ai metodi, lo fa solo se una variabile nel modulo di debug è True.
  Ovviamente lo deve fare quando il modulo viene importato...
  
  Ho unito i pacchetti, ora se un modulo chiama

     from sqlkit import debug


  per potere impostare a True la variabile, innesca l'import del modulo
  sqlkit, quando la variabile non è ancora impostata, e quindi niente
  debug...   (in quanto sqlkit/__init__.py importa il modulo con la metaclasse)


  Come si esce da questa situazione?  Ho anche provato a fare reload del
  modulo ma non succede nulla (non pare che lo rilegga)


sandro
*:-)


Maggiori informazioni sulla lista Python