1

コントローラーには と の 2 つのアクションがactionA()ありactionB()ます。条件に応じてactionA()、オブジェクトを返すViewModelか転送する必要がありますactionB()(そしてその結果を返します):

class MyController extends AbstractActionController {

public function aAction() {
    ...
    $data = ...
    ...
    if (...) {
        $result = new ViewModel(array(
            'data' => $data,
        ));
    } else {
        $result = $this->forward()->dispatch('MyModule\Controller\My', array(
            'action' => 'b',
        ));
    }
    return $result;
}

で試してみました

        $result = $this->forward()->dispatch('MyModule\Controller\My', array(
            'action' => 'b',
            'data' => $data,
        ));

しかし、今このデータを取得する方法がわかりません。

きっと、可能です。どうすればいいですか?

4

1 に答える 1

0
    public function bAction() {
        ...
        // so:
        $params = $this->params()->fromRoute();
        // or so:
        $params = $this->getEvent()->getRouteMatch()->getParams();
        ...
    }
于 2013-04-12T17:51:41.607 に答える