2012-03-19 31 views
1

如何將$this->params['form']傳遞給我在requestAction中指定的控制器動作,以便我可以通過調用$this->params['form']以相同的方式使用變量?

這裏是我想要什麼(但不工作):

$this->requestAction('/reports/grid', array('params["form"]' => $this->params['form'])); 
$this->requestAction('/reports/grid', array('$this->params["form"]' => $this->params['form'])); 

回答

1
$this->requestAction('/reports/grid', array('form' => $this->params['form'])); 
0

按照1.3的文檔,你需要指定要在發送請求關每個參數passnamed參數鍵 - http://book.cakephp.org/1.3/en/view/991/requestAction

echo $this->requestAction(array('controller' => 'articles', 'action' => 'featured'), array('named' => array('limit' => 3))); 

echo $this->requestAction(array('controller' => 'articles', 'action' => 'view'), array('pass' => array(5))); 

所以,它應該是這樣

$this->requestAction('/reports/grid', array('pass' => array($this->params['form']))); 

注 - 您希望使用requestAction的原因很少。如果你還沒有,請閱讀罰則。

+0

關閉,但不完全。而不是'pass',我只需要使用'form',並移除包裝參數的'array()。感謝您的洞察力:) – Garrett 2012-03-19 17:16:30

+0

您可以發佈適合您的解決方案嗎?它可能會幫助有同樣問題的人。謝謝! – JohnP 2012-03-19 17:19:27