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