デバッグ方法

 というほどでもないのですが、忘れないうちにメモ。(buildout環境が前提です)

フォアグラウンド実行

 Zopeインスタンスは、通常、バックグラウンドで実行されますが、デバッグ用としては、次のコマンドでフォアグラウンド実行します。

 $ bin/instance fg

フォアグラウンドで実行すると、ログがコンソールに表示され、Zope自体もdebugモードで動作し、ファイルシステム上のPageTemplateの変更は、即座に反映されます。CSSJavaScriptのキャッシュ/マージ機能もOFFになるそうです。

plone.reload

 通常、PythonコードとZCMLの変更を反映するには、Zopeの再起動が必要です。このプロダクトが入っていると、Zopeインスタンスのルートで@@reloadビューをリクエストすると、リローダが実行されます。(Plone4.3.1ではデフォルトで含まれています)

 http://localhost:8080/@@reload

Products.PDBDebugMode

 このパッケージをインストールしておくと、なにか例外が発生したら、デバッガのプロンプトが表示されるようになります。また、URLの最後に/@@pdbをつけてリクエストして呼び出すこともできます。コンテンツの属性値を確認したりするのに、便利そうです。

 http://localhost:8080/Plobe/my_content/@@pdb
||