DebugKitの導入方法
開発環境:CakePHP2.5.1
CakePHPには標準でデバッグ機能がついているので、それでも十分効率的な開発を行うことができますが、もっと開発を便利にしてくれるのがDebugKitというプラグインです。
それでは導入方法を順を追って見ていきましょう。
DebugKitをgit clone
まず最初はGithub上に公開されているソースをgit cloneします。
https://github.com/cakephp/debug_kit
リネームして設置
git cloneしたファイルを DebugKit とリネームして app/Plugin/DebugKit に設置します。
bootstrap.phpに読み込む設定を追記
設置したDebugKitを読み込むために、app/Config/bootstrap.php に下記のコードを追加します。
CakePlugin::load('DebugKit');
AppControllerでインクルード
DebugKitの読み込みが完了したので、実際に利用するために app/Controller/AppController.php でコンポーネントを呼び出します。
class AppController extends Controller { public $components = array('DebugKit.Toolbar'); }
デバッグ設定を1以上にする
初期状態では app/Config/core.php の デバッグ設定が「2」になっていますので問題ありませんが、DebugKitを利用するには「1」以上にする必要があります。
Configure::write('debug', 1);
標準のsql_dumpを削除
最後に標準でついているsql_dumpを削除します。app/View/Layouts/default.ctp に下記の記述がされています。
<?php echo $this->element('sql_dump'); ?>
DebugKitの設定完了
以上で、DebugKitの設定が完了となります。
この状態で初期画面をみてみると、下記のメッセージが表示されて正常に設置できたことが確認できます。
DebugKit plugin is present
Sql LogsではExplainも実行してくれる
Sql Logsの項目では、その名の通り、どのようなSQLを発行しているか確認でき、更にはExplainも実行してくれるので、わざわざコマンドを叩く必要がなくなりますね。
DebugKitの注意点
DebugKitを導入する上での注意点を2つ。
1.headタグを小文字で書く
DebugKitはheadの閉じタグを見つけて、下記のコードを挿入します。
<link rel="stylesheet" type="text/css" href="/debug_kit/css/debug_toolbar.css" /> <script type="text/javascript"> //<![CDATA[ window.DEBUGKIT_JQUERY_URL = "/debug_kit/js/jquery.js"; //]]> </script><script type="text/javascript" src="/debug_kit/js/js_debug_toolbar.js"></script>
これは と小文字で書いた時に有効になるもので、 のように大文字で書くと反映されません。
2.layoutは必ず使う
<?php $this->layout = false; ?>
このようにレイアウトを使わないケースがあると思いますが、この場合、DebugKitが表示されません。
先ほどのようにheadタグがあればいいかと思い、ビュー内にheadタグを書いてもうまくいきませんので、DebugKitを使いたい時はレイアウトを必ず使うようにしましょう。