CakePHPでloadModel

CakePHPでは、
コントローラやコンポーネントでモデルを使用する場合には[loadModel]メソッドを使う。

class HogeController extends AppController {]
  public function index() {
    $this->loadModels('Foo', 'Bar');
    $this->Foo->findById(1);
  }
}

loadModelメソッドは1回の呼び出しにつき、1つのモデルしか読み込まないので、
たくさんのモデルを読み込みたいときにはなかなか不便です。
ということで、1回の呼び出しで複数のモデルを読み込める拡張版をAppControllerとかに作っておくと便利です。

public function index() {
  $this->loadModels('Foo', 'Bar');
  $this->Foo->findById(1);
}

public function loadModels() {
  $models = func_get_args();
  foreach ($models as $key => $model) {
    $this->loadModel($model);
  }
}

まぁそれだけ。