在VirtualBox/Vagrant环境中使用django-debug-toolbar

背景

    • Djangoの開発におけるデバッグにdjango-debug-toolbarの利用を検討

 

    VirtualBox環境で作成中のアプリで利用するのに詰まったので実施した設定を記録

环境

    • OS : CentOS 6.4

 

    • Python : 2.6.6

 

    • Django : 1.6

 

    • django-debug-toolbar : 1.3.0

 

    sqlparse : 0.1.19

安装

    • インストールの実施

djangoのインストールも自動で実行された
django 1.6で動くアプリケーションだったため、後にdjango1.6を再インストール

 # pip install django-debug-toolbar==1.3.0 
    • インストールの確認

下記記の通り表示されることを確認

 # pip freeze
 Django-debug-toolbar==1.3.0

最初的设置

    • “$PROJECT_DIR/setting.py”の下記項目を編集

DEBUG = Trueに変更
INSTALLED_APPに’debug_toolbar’を追加
INTERNAL_IPSにアクセス元IP(REMOTE_ADDR)を追加

...
DEBUG = True

INSTALLED_APPS = (
...
'django.contrib.staticfiles',
'debug_toolbar',   ← django.contrib.staticfilesより後の行に記述
...
)
...
INTERNAL_IPS = ('192.168.56.1')   ← サーバへのアクセス元IPを定義。Virtual Boxの場合、GWを経由するので、localからアクセスした場合、GWのアドレスがアクセス元となる。

参考:如何确认 REMOTE_ADDR

    作成済みのhtmlファイルに、request.META.get(‘REMOTE_ADDR’)の値を変数として渡して表示させる。
from django.shortcuts import render,render_to_response
from django.template import RequestContext

def get_client_ip(request):
    return render_to_response('test.html', {
        ip_addr = request.META.get('REMOTE_ADDR'),
    }, Context_instance=RequestContext(request))
{{ ip_addr }}

服务器启动

python manage.py runserver 0.0.0.0:8000

确认页面

    各アプリケーションのトップページの右側にDebug用のツールバーが表示される。

在安装过程中遇到了问题

    • REMOTE_ADDRをINTERNAL_IPSに追加しないと表示されないこと

 

    • REMOTE_ADDRが127.0.0.1ではなく、VirtualBoxのGWアドレスであること

 

    sqlparseのVersion(別Versionだと、”Exception Value: process() takes exactly 3 arguments (2 given)”と言ったエラーメッセージが表示される)
广告
将在 10 秒后关闭
bannerAds