CakePHPでモデル名変更への対処

Posted by joeartsea on 2009-03-15

CakePHPで行き当たりばったりに開発しているとモデル名を変更したくなる時があります。しかしCakePHPのチュートリアルのように書いているとモデル名を変えた時ソースへの影響が大きすぎます。そこで誰でも考え付きそうな方法なんですが対処方法を書いておきます。

まずコントローラでの影響範囲を減らすためにモデルのオブジェクトをローカル変数に格納します。

1
$M = $this->Model;

で、普通に使います。モデル名が変わったら上の1行を書き直すだけです。

1
$M->findAll();

次にViewでの影響範囲を減らすためにコントローラでモデル名をsetします。

1
$this->set('model', $M->name);

Viewでは以下のように書いてアクセスします。

1
<?php echo $data[$model][&#39;value&#39;] ?>