我是一个初学者,无法弄清楚
如何使用post方法在Zend_Form上传递参数和值 使用setAction()方法
控制器/动作/参数1 / parameter1value /参数2 / paremeter2value
我需要重写路由吗?
任何人都可以告诉我们如何实现这一目标 为什么zend文档如此可怕?
答案 0 :(得分:2)
我不知道这是否是最佳方法,但这一选择:
<?php
$form->setAction($form->getView()->url(array('controller' => 'your-controller', 'action' => 'some-action', 'someparam' => 'thevalue')));
?>
这就是你要找的东西吗?
答案 1 :(得分:0)
假设您的表单继承自Zend_Form
,您可以在实例化表单时传递参数,如下所示:
$form = new My_Form( array( 'action' => '/controller/action/parameter/' . $parameter,
'method' => 'post' ));
如果您在处理提交的表单时需要再次访问该参数,可以在控制器的操作方法中访问该参数,如下所示:
$request = $this->getRequest();
$parameter = $this->_getParam( 'parameter' );
整个系统假设您重写了URL,但没有任何想象力 - 只是“入门”文档中显示的“标准”方法。
虽然对Zend Framework文档的质量有不同的看法,但我认为ZF1中的Zend_Form非常复杂且难以学习,所以我认为doco有多好并不重要。该框架的一部分将始终难以学习。
答案 2 :(得分:0)
这对我有用:
在我的行动方法
$this->_helper->getHelper('Redirector')->gotoSimple('action','controller', null,
array(par1 => par1value,
par2 => par2value
)
);