CakePHPのdebugでSQLの出力は本当にありがたい。SQLに精通していない自分は、いろいろと書き方を勉強させてもらっている。
と ころでRESTなサービスを用意しjQueryを利用してテストページを試したところ、要素の選択がどうもうまく行かない。どうやらこのありがたいはずの debug表示出力がよろしくないようで、この出力を抑えたくなった。「core.php」の「debug」を「0」にすれば良いのだが、まだ開発中なの でコントローラからできれば便利である。
流石はCakePHP、次のようにしてクリアでした。
function beforeFilter() { if ($this->RequestHandler->isXml()) { Configure::write('debug', 0); } }
CakePHPのユーザフォーラムに「ajaxとhtml併用の際のDEBUG表示をどうするか」の記事で、同じように抑制の方法が載っていたので試したところ、出力データ最後の処理時間の出力だけは残ってしまった。他に方法がないか検索していたところ、Chris氏の「CakePHP1.2のWebサービスは本当に簡単?まじで簡単さ!」の記事のコメントが目についたので試したらOKでした。
2008-01-10
「isXml()」が「xxx.xml」で実行されなくてもtrueを戻すようだ。「isAjax()」を利用するとAjaxで呼び出されたときだけ、正しくtrueが戻された。今のところ、こちらを利用するようにしている。