Zend framework2 如何将参数值传递给另一个控制器';ZF2中的s作用
朋友们好,我是zf2的新手。我正在控制器中创建一个动作,所有东西都正常工作。当表单有效时,我想将一些值传递给重定向页面。我该怎么做?请帮帮我 我的控制器操作是Zend framework2 如何将参数值传递给另一个控制器';ZF2中的s作用,zend-framework2,Zend Framework2,朋友们好,我是zf2的新手。我正在控制器中创建一个动作,所有东西都正常工作。当表单有效时,我想将一些值传递给重定向页面。我该怎么做?请帮帮我 我的控制器操作是 public function studenteditAction(){ $id = (int) $this->params()->fromRoute('id', 0); if (!$id) { return $this->redirect()->toRoute('man
public function studenteditAction(){
$id = (int) $this->params()->fromRoute('id', 0);
if (!$id) {
return $this->redirect()->toRoute('manager', array(
'action' => 'students'
));
}
$form = new StudentsForm();
$request = $this->getRequest();
if ($request->isPost()) {
$students = new Students();
$form->setData($request->getPost());
if ($form->isValid()) {
$students->exchangeArray($form->getData());
$table = $this->getServiceLocator()->get('Students\Model\StudentsTable');
$table->profileStudents($students);
return $this->redirect()->toRoute('manager',array('controller'=>'manager','action'=>'student-view','id'=>$id,'status' => 'profile-ready'));
}
}
return array(
'id' => $id,
'form' => $form,
);
}
我无法在控制器视图上获取传递的状态值。
“状态”=>“配置文件准备就绪”
提前感谢您需要修改路由配置以接受“id”和“状态”值
'manager' => array(
'type' => 'Segment',
'options' => array(
'route' => '/manager[/:id][/:status]',
'defaults' => array(
'controller' => 'Application\Controller\Manager',
'action' => 'studentView',
),
'constraints' => array(
'id' => '[0-9]*',
'status' => '[a-z-]*'
),
),
),
控制器:
public function studentViewAction()
{
$id = $this->params()->fromRoute('id');
$status = $this->params()->fromRoute('status');
return new ViewModel(array('id' => $id, 'status' => $status));
}
查看
<?php
echo $this->id;
echo $this->status;
?>
这就是我如何将所需的值传递给另一个控制器的操作的方式感谢您的回复,但这种添加状态的方式将状态添加到url中,如()。我只想查看这个状态,而不是通过url,比如“echo$this->status”,重定向方法根据输入参数在内部构建url。因此,您不能使用redirect()方法执行HTTP post操作。