ホームページ制作を大阪で安く頼むならプロットハブ!

ホームページ制作を大阪で安く頼むならプロットハブ!
毎月5社限定企画実施中

プロットハブ技術ブログ

(debug_toolbar.E001) The Django Debug Toolbar can’t be used with tests エラーの解決方法

Hidekazu Koga

Hidekazu Koga

2024/6/27

エラー現象

Djangoでこれまで問題なく実行てきていたtestコマンドを実行すると、下記のエラーが発生した。

SystemCheckError: System check identified some issues:

ERRORS:
?: (debug_toolbar.E001) The Django Debug Toolbar can’t be used with tests
HINT: Django changes the DEBUG setting to False when running tests. By default the Django Debug Toolbar is installed because DEBUG is set to True. For most cases, you need to avoid installing the toolbar when running tests. If you feel this check is in error, you can set DEBUG_TOOLBAR_CONFIG['IS_RUNNING_TESTS'] = False to bypass this check.

解決方法

HINTにあるように、setting.py でDEBUG_TOOLBAR_CONFIG['IS_RUNNING_TESTS'] = Falseを追加することで実行できる。

DEBUG_TOOLBAR_CONFIG = {
    "SHOW_TOOLBAR_CALLBACK" : lambda request: DEBUG,
    "IS_RUNNING_TESTS": False
}

解決方法2

下記のようにtestコマンドが実行中の場合は、debug_toolbarをインストールしない様な記述でも実行できるようになるが、上記の方法がシンプル。

  1. 先にデバッグツールバーを追加し、後から除く方法
import sys

INSTALLED_APPS = [
    'xxxxx',
    'debug_toolbar',
]
MIDDLEWARE = [
    'xxxxx'
    'debug_toolbar.middleware.DebugToolbarMiddleware'
]

is_test = 'test' in sys.argv
if is_test:
    DEBUG_TOOLBAR_CONFIG = {
        'SHOW_TOOLBAR_CALLBACK': lambda request: False,
    }
    INSTALLED_APPS = [app for app in INSTALLED_APPS if app != 'debug_toolbar']
    MIDDLEWARE = [mw for mw in MIDDLEWARE if mw != 'debug_toolbar.middleware.DebugToolbarMiddleware']
  1. 後からデバッグツールバーを追加する方法
import sys

INSTALLED_APPS = [
    'xxxxx',
]
MIDDLEWARE = [
    'xxxxx',
]

is_test = 'test' in sys.argv
if not is_test:
    DEBUG_TOOLBAR_CONFIG = {
        'SHOW_TOOLBAR_CALLBACK': lambda request: False,
    }
    INSTALLED_APPS += ['debug_toolbar']
    MIDDLEWARE += ['debug_toolbar.middleware.DebugToolbarMiddleware']

原因

debug_toolbarのversion4.4.1から仕様が変更になったみたい。
https://github.com/jazzband/django-debug-toolbar/issues/1920

ちなみに本エラーが出た環境ではversion4.4.2だった。

プロットハブはソフトウェア開発を
支援しています。
ご興味のある方はぜひお気軽に
ご相談ください。

一覧ページに戻る

全カテゴリ一覧

全タグ一覧

関連記事

コメント

コメントを残す

コメントが承認されると公開されます。※の入力欄は必須項目です

ホームページ制作が毎月5社限定5万5千円から!ご依頼の方はコチラ!