デバッグ出力

2,153 views
Skip to first unread message

deshi

unread,
Jan 25, 2008, 11:11:00 PM1/25/08
to django-ja
連続ですみません。もう一つ教えてください。

django の開発において、デバッグ出力をスマートに行う方法はあるのでしょうか。
PHP で開発していた頃は、単に print 文を実行すれば 出力先HTML ページに出力されていましたが、
たとえば

class exampleClass( models.Model ):
name = models.CharField( maxlength = 32 )
def save(self):
print "this is debug print" ;
super( exampleClass, self ).save()

class Admin:
pass

というコードを書いてアドミンページで追加しても何も出力されません。
よろしくお願いします。

NISHIO Hirokazu

unread,
Jan 26, 2008, 12:28:34 AM1/26/08
to djan...@googlegroups.com
にしおです。
コンソールに出ていませんか?

2008/1/26 deshi <de...@mars.dti.ne.jp>:

deshi

unread,
Jan 27, 2008, 4:17:54 AM1/27/08
to django-ja
deshi です。にしおさん、フォローありがとうございます。

「コンソール」がシステムのプライマリの端末のことを指すのであれば、なにも表示されていません。
それとも、django では django 専用の表示端末のようなものがあるのでしょうか?

tokibito

unread,
Jan 27, 2008, 4:57:41 AM1/27/08
to django-ja
岡野です。

"manage.py runserver"のコマンドで動作させているのであれば、そのコマンドが実行中のコンソール画面(コマンドプロンプトなど)
にprintの出力が出るはずです。
daemonizeなどを使ってデーモン起動させているなら、出力はログファイルに出力されます。ログファイルは明示的に指定しないと作成されなかった
ような気がします。
また、settings.pyでDEBUG=Trueにしているならば、エラーの場合はtracebackがブラウザ画面で表示されます。

deshi

unread,
Jan 27, 2008, 6:11:10 AM1/27/08
to django-ja
岡野さん、フォローありがとうございます。

>>"manage.py runserver"のコマンドで動作させているのであれば
なるほど…。
実は最終的な実稼動サーバとほぼ同じ設定の仮想サーバを立ち上げて、Apache + mod_python の環境で実行テストしています。これは
「なるべく最終稼動サーバと同じ条件で開発・デバッグしたい」ということからこの方法を取っているのですが、django の(ウェブアプリケーション
のテストの)流儀は、django のウェブサーバを使うのですね。
ただ、最終稼動環境 ≒ テスト環境のポリシーは変えられないので、ログファイル生成の方向を考えていこうと思います。

本音を言えば、ウェブページとしてログを出力してくれる機能があれば…と思うのですが…。

Masahiro Yamagishi

unread,
Jan 27, 2008, 6:09:55 PM1/27/08
to djan...@googlegroups.com
こんにちは、山岸と申します。

mod_pythonは、使っていないのであやふやなのですが、
printでの出力は、Apacheのエラーログに出力されたような気
がします。

Reply all
Reply to author
Forward
0 new messages