cakePHP:如何使用另一个控制器中的动作?

时间:2012-04-12 09:01:46

标签: methods controller cakephp-1.3

我有一个控制器(A)来管理一个对象,在控制器中我有一个检查是否允许$this->Auth->user(id)访问该对象的方法。
这是通过访问相关模型($this->ModelA->ModelB->...)来完成的。

现在,在另一个控制器(C)中,我需要检查相同的问题(对于某些内部逻辑)。但是,该控制器的模型与ModelB无关 所以,我的问题是:如何检查? 纯SQL是可能的,但我更愿意避免它。

我看到的唯一方法是从另一个控制器调用该方法..

1 个答案:

答案 0 :(得分:0)

将逻辑放入AppController中的方法中,以便所有控制器都可以访问它 在该方法中,必要时加载模型:

class AppController extends Controller {

    protected function isUserAllowed() {
        if (!isset($this->TheModel)) {
            $this->loadModel('TheModel');
        }

        ...
    }

}