2012/11/24

[CakePHP] Controllerで モデルを指定するとき

・Controller共通で定義
var $uses=array('ModelA', 'ModelB');
・メソッド(Action)ごとに定義
loadModel(string $modelClass, mixed $id)

$this->loadModel('ModelA');
$this->loadModel('ModelB');

※単純に モデルを呼びたい時は loadModel() を使うようにする
※Controller以外では ClassRegistry::init('ModelA') も使える
App::import()は モデルに限らず 指定のソースを読み込みたい時に使うものなので、安易に使わないように。


参考)

App::import と ClassRegistry::init の違い | 1000g
http://1000g.5qk.jp/2011/07/05/appimport-%E3%81%A8-classregistryinit-%E3%81%AE%E9%81%95%E3%81%84/


Modelを2個以上読み込む場合は、$usesを使わない方がスピードアップする - cakephperの日記(CakePHP, MongoDB)

App::import() は凄い - 24時間CakePHP
http://d.hatena.ne.jp/hiromi2424/20101215/1292379625

0 件のコメント: