2012-08-17 10 views
6

En Django tengo un paquete que emite una advertencia de depreciación (django.views.generic.simple). Sería útil si esta advertencia describe dónde se realizó la importación desde, por lo que el programador puede entrar y cambiar el archivo sin tener que pasar por el código para encontrarlo.Mostrar detalles del importador

lo tanto, el caso general es

#file1.py 
import file2.py 

#file2.py 
import warnings 
warnings.warn(
'Package deprecated: imported from %s' % __importer__, 
DeprecationWarning 
) 

Dónde __importer__ es un atributo que contiene imaginaria "file1.py", o alguna referencia.

¿Hay alguna manera de hacerlo?

Respuesta

6

Sí, esto se hace mediante el uso del argumento stacklevel en warnings.warn. Vea el ejemplo en el documentation para más información.

+0

¡Ese es el trabajo! – powlo

Cuestiones relacionadas