首页 文章

Cakephp 2.3:如何将数据数组发送到另一个控制器中的动作进行渲染?

提问于
浏览
1

我有一个控制器动作,它应该验证数据并将结果(数据数组)传递给另一个控制器中的动作以进行进一步处理 . 我不想为此使用会话组件,因为这不是理想的 . 鉴于此,是否有任何其他方法将数据数组传递给另一个控制器/操作 .

我正在使用CakePHP 2.3.10

由于数据数组的长度,我不确定是否可以发送namedParams或Query字符串 .

提前致谢 .

3 回答

  • 0

    您可以通过使用如下例所示的用途来实现此目的:

    App::uses('AnotherController','Controller');
        class ContentsController extends AppController {
    
          function youAction(){
             $anotherControllerObject = new AnotherController();
             $anotherControllerObject->anotherControllerfunction($longDataArray);
    
          }
        }
    
  • 1

    听起来您在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
    
  • 0

    我有一个控制器动作,它应该验证数据并将结果(数据数组)传递给另一个控制器中的动作以进行进一步处理 .

    为什么不在模型中继续进行处理(包含脂肪模型) .

相关问题