我有一个控制器(A)来管理一个对象,在控制器中我有一个检查是否允许$this->Auth->user(id)
访问该对象的方法。
这是通过访问相关模型($this->ModelA->ModelB->...
)来完成的。
现在,在另一个控制器(C)中,我需要检查相同的问题(对于某些内部逻辑)。但是,该控制器的模型与ModelB无关 所以,我的问题是:如何检查? 纯SQL是可能的,但我更愿意避免它。
我看到的唯一方法是从另一个控制器调用该方法..
答案 0 :(得分:0)
将逻辑放入AppController
中的方法中,以便所有控制器都可以访问它
在该方法中,必要时加载模型:
class AppController extends Controller {
protected function isUserAllowed() {
if (!isset($this->TheModel)) {
$this->loadModel('TheModel');
}
...
}
}