デバッグ方法
というほどでもないのですが、忘れないうちにメモ。(buildout環境が前提です)
フォアグラウンド実行
Zopeインスタンスは、通常、バックグラウンドで実行されますが、デバッグ用としては、次のコマンドでフォアグラウンド実行します。
$ bin/instance fg
フォアグラウンドで実行すると、ログがコンソールに表示され、Zope自体もdebugモードで動作し、ファイルシステム上のPageTemplateの変更は、即座に反映されます。CSSとJavaScriptのキャッシュ/マージ機能も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 ||