我有一个控制器动作,它应该验证数据并将结果(数据数组)传递给另一个控制器中的动作以进行进一步处理。我不想为此使用会话组件,因为这不是理想的。鉴于此,是否有任何其他方法可以将数据数组传递给另一个控制器/操作。
我正在使用CakePHP 2.3.10
由于数据数组的长度,我不确定是否可以发送namedParams或Query字符串。
提前致谢。
答案 0 :(得分:1)
您可以通过使用如下例所示的用途来实现此目的:
App::uses('AnotherController','Controller');
class ContentsController extends AppController {
function youAction(){
$anotherControllerObject = new AnotherController();
$anotherControllerObject->anotherControllerfunction($longDataArray);
}
}
答案 1 :(得分:0)
听起来你需要在ControllerA中做的大部分工作是验证和按摩数据。这可以通过附加的模型来处理。
如果将逻辑从controllerA移动到ModelA中的函数,则可以通过将数据直接传递给ControllerB并让ControllerB使用loadModel访问ModelA来切断ControllerA。
例如在ControllerB中:
$this->loadModel('ModelA');
$validatedData = $this->ModelA->aDataProcessingFunction($this->request->data);
//continue with second step of processing
答案 2 :(得分:0)
我有一个控制器动作,应该验证数据和 将结果(数据数组)传递给另一个控制器中的操作 进一步处理。
为什么不在模型中继续进行处理(包含脂肪模型)。