5

django-debug-toolbarを起動して実行しようとすると問題が発生します。、 に必要なすべての情報が追加されてINSTALLED_APPSおりMIDDLEWARE_CLASSES、私の IP はINTERNAL_IPSタプルにあります。setup.py スクリプトを実行しましたが、django または apache からエラーが発生していないため、すべて正常に読み込まれているようです。

ただし、何も起こりません。どのページにもツールバーがありません。他の誰かがこの動作を見たことがありますか? 明らかな何かが欠けていますか?

4

2 に答える 2

8

私はしばらくの間これと同じ問題を抱えていました。

管理パネルにログインしてみましたか?ツールバーがそこに表示されているのにコードに表示されていない場合は、テンプレートの開始タグと終了タグが欠落している可能性があります。デフォルトでは、djangoデバッグツールバーはBODYタグにアタッチされますが、必要に応じてこの動作を変更できます。この質問を参照してください:Djangoデバッグツールバーは管理セクションでのみ機能します

于 2011-09-04T15:31:59.953 に答える
2

私は2つのことのいずれかを行います:

import pdb; pdb.set_trace()ミドルウェアメソッドに挿入して、_show_toolbar失敗したアイテムを確認するか、ミドルウェアに print ステートメントを追加して、どのチェックで失敗したかを確認します。

def _show_toolbar(self, request, response=None):
        if not settings.DEBUG or not getattr(settings, 'DEBUG_TOOLBAR', True) or getattr(settings, 'TEST', False):
            return False

        if request.path.startswith(settings.MEDIA_URL):
            return False

        if response:
            if getattr(response, 'skip_debug_response', False):
                return False
            if response.status_code >= 300 and response.status_code < 400:
                return False

        # Allow access if remote ip is in INTERNAL_IPS or
        # the user doing the request is logged in as super user.
        if (not request.META.get('REMOTE_ADDR') in settings.INTERNAL_IPS and 
           (not request.user.is_authenticated() or not request.user.is_superuser)):
            return False
        return True
于 2011-02-17T21:50:13.523 に答える