diff options
author | Stephen Finucane <stephen.finucane@intel.com> | 2016-03-23 18:24:03 +0000 |
---|---|---|
committer | Stephen Finucane <stephen.finucane@intel.com> | 2016-03-24 17:34:58 +0000 |
commit | 34ccee4a2b2b332c4b0967e5fcb691f72a44478e (patch) | |
tree | 315fa049ce2bb9ea78d9733446be673db93b4c19 /patchwork | |
parent | cab52992449611f74bcdff1b456af8149de29f8b (diff) | |
download | patchwork-34ccee4a2b2b332c4b0967e5fcb691f72a44478e.tar patchwork-34ccee4a2b2b332c4b0967e5fcb691f72a44478e.tar.gz |
settings: Use explicit setup for the Debug Toolbar
The 'django-debug-toolbar' application provides an automatic method of
configuring the plugin. However, as noted in the documentation [1],
this can cause issues like circular imports. In this case, a
"Table 'patchwork.patchwork_state' doesn't exist" exception was being
raised when attempting to do an initial migration.
Resolve this by using the manual configuration provided in the docs.
[1] https://django-debug-toolbar.readthedocs.org/en/1.4/installation.html
Signed-off-by: Stephen Finucane <stephen.finucane@intel.com>
Closes-bug: #29
---
v2: Don't rely on 'settings.DEBUG', as this is set to False in tests
Diffstat (limited to 'patchwork')
-rw-r--r-- | patchwork/settings/dev.py | 28 | ||||
-rw-r--r-- | patchwork/urls.py | 7 |
2 files changed, 28 insertions, 7 deletions
diff --git a/patchwork/settings/dev.py b/patchwork/settings/dev.py index 8c95c33..8cf0526 100644 --- a/patchwork/settings/dev.py +++ b/patchwork/settings/dev.py @@ -18,13 +18,6 @@ from .base import * # noqa # https://docs.djangoproject.com/en/1.6/ref/settings/#core-settings # -# Models - -if django.VERSION >= (1, 7): - INSTALLED_APPS += [ - 'debug_toolbar' - ] - # Security SECRET_KEY = '00000000000000000000000000000000000000000000000000' @@ -68,6 +61,27 @@ else: EMAIL_BACKEND = 'django.core.mail.backends.console.EmailBackend' # +# Third-party application settings +# + +# django-debug-toolbar + +if django.VERSION >= (1, 7): + INSTALLED_APPS += [ + 'debug_toolbar' + ] + + DEBUG_TOOLBAR_PATCH_SETTINGS = False + + # This should go first in the middleware classes + MIDDLEWARE_CLASSES = [ + 'debug_toolbar.middleware.DebugToolbarMiddleware', + ] + MIDDLEWARE_CLASSES + + INTERNAL_IPS = ['127.0.0.1', '::1'] + + +# # Patchwork settings # diff --git a/patchwork/urls.py b/patchwork/urls.py index 022b92c..bf8a123 100644 --- a/patchwork/urls.py +++ b/patchwork/urls.py @@ -17,6 +17,7 @@ # along with Patchwork; if not, write to the Free Software # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +import django from django.conf import settings from django.conf.urls import url, include from django.contrib import admin @@ -122,6 +123,12 @@ urlpatterns = [ url(r'^help/(?P<path>.*)$', help_views.help, name='help'), ] +if 'debug_toolbar' in settings.INSTALLED_APPS: + import debug_toolbar + urlpatterns += [ + url(r'^__debug__/', include(debug_toolbar.urls)), + ] + if settings.ENABLE_XMLRPC: urlpatterns += [ url(r'xmlrpc/$', xmlrpc_views.xmlrpc, name='xmlrpc'), |