タグ

ブックマーク / d.hatena.ne.jp/hetima (2)

  • CakePHP の findAll で効率良く recursive - d.hetima

    CakePHP 1.1.13.4450 + PHP 5系 + MySQL 4.1系にてテスト Job モデルは com_id フィールドがあって Com モデルに belongsTo Job を一覧表示するときに Com の name フィールドも表示したい Job.idJob.nameJob.com_id 1仕事A1 2きつい仕事2 3楽な仕事1 Com.idCom.name 1会社A 2会社B というデータから、 Job.idJob.nameCom.name 1仕事A会社A 2きつい仕事会社B 3楽な仕事会社A こんな感じの一覧を表示したいわけです。どうするのが効率が良いか。まず、Job モデルのアソシエーションを以下のように設定。 <?php class Job extends AppModel { var $name = 'Job'; var $belongsTo = array(

  • CakePHP に use_trans_sid 風の処理を組み込む - d.hetima

    CakePHP のセッションまわりをカスタマイズする の続編。携帯向けのページに、クッキーを使わないセッション処理を組み込む方法です。 手順は、 CakeSession クラスの初期化をカスタマイズして、クッキー使用を切り替える フォームやリンクに session_id を仕込む リクエストから session_id を取得してセッションと結びつける となります。use_trans_sid を使えばもっとシンプルにはなると思いますが、セッションを保持させたくない遷移もあるわけで、その都度指定した方が便利だろうというわけで。 リクエストから session_id を取得してセッションと結びつける これは Controller の __construct() に書きます。beforeFilter() では既にセッション初期化済みなので間に合わないのです。Controller ごとに処理を書くの

  • 1