通过形式cakePHP 2.2传递param

时间:2012-09-26 11:24:10

标签: cakephp cakephp-2.0 cakephp-2.1 cakephp-2.2

我在视图中(view / 1),我想将一个参数传递给其控制器上的一个函数。

我试过这个:

echo $this->Form->create('Post', array('action' => 'move'));

但是,它没有传递URL上的param $ id。

我看到它在编辑视图中运行良好:

 echo $this->Form->create('Post');

为什么它不能使用我的视图/控制器功能?

另外,如果我尝试用这样的东西传递它们:

echo $this->Form->create('Post', array('action' => 'move', 1));

它打印的内容如下:

<form action="/posts/move" 1="1"

由于

2 个答案:

答案 0 :(得分:2)

要传递参数,您只需将参数传递给: -

  

echo $ this-&gt; Form-&gt; create(&#39; Post&#39;,array(&#39; action&#39; =&gt;&#39; move / 1&#39;));

在控制器中,

  

调试($这 - &GT;请求 - &GT; PARAMS [&#39;通过&#39;] [0]);

由于编辑视图已包含正在编辑的帖子的ID,因此我们不需要在表单create中明确传递id。

答案 1 :(得分:1)

以蛋糕风格传递:)

echo $this->Form->create('Post', array('action' => array( 'action' => 'move', 1 ) ));

-OR -

echo $this->Form->create('Post', array('url' => Router::url( array( 'action' => 'move', 1 ) ) ));

这将在考虑路由时实现它。