aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJannis Leidel2012-05-13 12:12:56 +0200
committerJannis Leidel2012-05-13 12:12:56 +0200
commit7fa83ed02ee038802d41f955966c892148385bae (patch)
tree711baff3e8057d4bc88c0f9c9b84f15f810d07da
parentc590c7e1f825e2610f25e5512794aeb24fdf0cd5 (diff)
downloaddjango-debug-toolbar-7fa83ed02ee038802d41f955966c892148385bae.tar.bz2
Minor cosmetic cleanup, switching out __import__ calls with the proper use of Django's import_module.
-rw-r--r--debug_toolbar/panels/signals.py13
-rw-r--r--debug_toolbar/panels/version.py4
-rw-r--r--debug_toolbar/toolbar/loader.py5
3 files changed, 11 insertions, 11 deletions
diff --git a/debug_toolbar/panels/signals.py b/debug_toolbar/panels/signals.py
index 2d38b1f..984b064 100644
--- a/debug_toolbar/panels/signals.py
+++ b/debug_toolbar/panels/signals.py
@@ -1,5 +1,3 @@
-import sys
-
from django.conf import settings
from django.core.signals import (request_started, request_finished,
got_request_exception)
@@ -7,6 +5,8 @@ from django.db.models.signals import (class_prepared, pre_init, post_init,
pre_save, post_save, pre_delete, post_delete, post_syncdb)
from django.dispatch.dispatcher import WEAKREF_TYPES
from django.utils.translation import ugettext_lazy as _, ungettext
+from django.utils.importlib import import_module
+
try:
from django.db.backends.signals import connection_created
@@ -60,6 +60,7 @@ class SignalDebugPanel(DebugPanel):
def url(self):
return ''
+ @property
def signals(self):
signals = self.SIGNALS.copy()
if hasattr(settings, 'DEBUG_TOOLBAR_CONFIG'):
@@ -67,12 +68,10 @@ class SignalDebugPanel(DebugPanel):
else:
extra_signals = []
for signal in extra_signals:
- parts = signal.split('.')
- path = '.'.join(parts[:-1])
- __import__(path)
- signals[parts[-1]] = getattr(sys.modules[path], parts[-1])
+ mod_path, signal_name = signal.rsplit('.', 1)
+ signals_mod = import_module(mod_path)
+ signals[signal_name] = getattr(signals_mod, signal_name)
return signals
- signals = property(signals)
def process_response(self, request, response):
signals = []
diff --git a/debug_toolbar/panels/version.py b/debug_toolbar/panels/version.py
index 7ed9716..ccb0ad8 100644
--- a/debug_toolbar/panels/version.py
+++ b/debug_toolbar/panels/version.py
@@ -4,6 +4,7 @@ import django
from django.conf import settings
from django.utils.translation import ugettext_lazy as _
from django.utils.datastructures import SortedDict
+from django.utils.importlib import import_module
from debug_toolbar.panels import DebugPanel
@@ -32,8 +33,7 @@ class VersionDebugPanel(DebugPanel):
versions = [('Python', '%d.%d.%d' % sys.version_info[:3])]
for app in list(settings.INSTALLED_APPS) + ['django']:
name = app.split('.')[-1].replace('_', ' ').capitalize()
- __import__(app)
- app = sys.modules[app]
+ app = import_module(app)
if hasattr(app, 'get_version'):
get_version = app.get_version
if callable(get_version):
diff --git a/debug_toolbar/toolbar/loader.py b/debug_toolbar/toolbar/loader.py
index 4d09a27..02a558d 100644
--- a/debug_toolbar/toolbar/loader.py
+++ b/debug_toolbar/toolbar/loader.py
@@ -7,6 +7,7 @@ import os.path
from django.conf import settings
from django.template.loader import render_to_string
from django.utils.datastructures import SortedDict
+from django.utils.importlib import import_module
from django.utils.safestring import mark_safe
@@ -91,10 +92,10 @@ def load_panel_classes():
dot = panel_path.rindex('.')
except ValueError:
raise ImproperlyConfigured(
- '%s isn\'t a debug panel module' % panel_path)
+ "%s isn't a debug panel module" % panel_path)
panel_module, panel_classname = panel_path[:dot], panel_path[dot + 1:]
try:
- mod = __import__(panel_module, {}, {}, [''])
+ mod = import_module(panel_module)
except ImportError, e:
raise ImproperlyConfigured(
'Error importing debug panel %s: "%s"' %