0
我有一个控制器(A)来管理对象,在控制器中我有一个方法来检查$this->Auth->user(id)
是否被允许访问该对象。
它通过访问关联模型($this->ModelA->ModelB->...
)完成。cakePHP:如何在另一个控制器中使用一个动作?
现在,在另一个控制器(C)中,我需要检查相同的问题(对于某些内部逻辑)。但是,此控制器的模型不与ModelB关联。
所以,我的问题是:如何检查它? 纯SQL是可能的,但我更喜欢避免它。
我看到的唯一途径,是从另一个控制器调用方法..
1)谢谢。 2)如果模型已经加载,它会加载另一个实例,或者它是singelton(比如?)? 3)似乎是错误的方式,因为通过将它添加到appC',我将它加载到每个控制器中,而我只需要在两个控制器中加载它? – yossi 2012-04-12 09:44:08
@yossi请仔细看一下示例代码。只有在模型不存在的情况下,该模型才被加载。在调用该方法之前它不会被加载。该方法在被调用之前不会执行任何操作,并且不会通过在那里但不被调用来添加任何资源。 – deceze 2012-04-12 09:46:09
我的道歉 - 你是对的,你在代码中照顾它。 ** 这是正确的第二个问题..出于某种原因,我看到'isAuthorized',而不是isUserAllowd ..... ***最后一个问题,appController的方法可以通过浏览器地址栏访问其他方法?而且,保护方向应该解决这个问题? – yossi 2012-04-12 09:51:43