タグ

ブックマーク / cakephp.seesaa.net (3)

  • DEBUG=0なのにDESCRIBEが頻発する

    CakePHPは、PHP言語の高速開発用フレームワークです。日々、発展を遂げる各種フレームワークの動向を見極めつつ、日発のCakePHP応援ブログとして、最新情報をお届けします。 うひゃ~久しぶりの更新だ。 今回、依頼されて調査したのは、「DEBUG=0に設定しているのに毎回DESCRIBEが発行されており、パフォーマンスに影響している」というものでした。 そんなこと起こるのかなぁと思ったら当に発生していました。 まず最初に調べたのは、内部のコードで、DEBUGの値を変えていないか、というチェック。 Grepで一気に調べましたが、ありませんでした。 うーん、なんでだろう、と/app/tmp/cache/models を調べたところ、ファイルが生成されていないことが判明。 CakePHPは、テーブル構造の情報を DEBUG>0にしていると毎回チェックしますが、DEBUG=0にすると、「テ

    DEBUG=0なのにDESCRIBEが頻発する
  • 冴えたページングテクニック

    CakePHPは、PHP言語の高速開発用フレームワークです。日々、発展を遂げる各種フレームワークの動向を見極めつつ、日発のCakePHP応援ブログとして、最新情報をお届けします。 ただものではないmarianoのページングテクニックが公開されています。CakePHPユーザなら一度は見るべき。 marianoiglesias Pagination with custom find types in CakePHP protected $_types = array( 'published' => array( 'conditions' => array('Post.published' => 1), 'order' => array('Post.created' => 'desc') ) ); とするだけで、 $posts = $this->Post->find('published');

    冴えたページングテクニック
  • redirect()で困ったら~"Don't redirect directly!"

    CakePHPは、PHP言語の高速開発用フレームワークです。日々、発展を遂げる各種フレームワークの動向を見極めつつ、日発のCakePHP応援ブログとして、最新情報をお届けします。 ログイン認証まわりでつまずいている方が多いようなので、参考情報を書いておきます……。 Cakeには、 「すべてのアクションの前には、親玉app_controller.php の "beforeFilter"が呼ばれる」 というルールがあります。 [追記:各コントローラにbeforeFilterを独自に設定してしまえば、parent::beforeFilter();としないかぎり、app_controller.phpのbeforeFilter()は呼ばれませんね。「すべてのアクションの前には、“コントローラで独自にbeforeFilterを設定していなければ”、親玉app_controller.phpのbefor

    redirect()で困ったら~"Don't redirect directly!"
  • 1