我有一个复杂的嵌套(订单)Zend\Form
,可以多次编辑。现在我想获取数据并稍后将其传递给新表单。(这样我想实现一个简单的克隆机制。)
已经有效的是将请求数据转换为 JSON
if ($request->isPost()) {
...
if(isset($request->getPost()->toArray()['store'])) {
$this->storeFormJson(json_encode($request->getPost()));
}
...
}
...
并将其传递给一个空表单:
if ($this->params()->fromQuery('populate')) {
$formDataJson = $this->getFormDataJson();
$formDataArray = json_decode($formDataJson, true);
$parameters = new Parameters($formDataArray);
$request->setPost($parameters);
$request->setMethod(Request::METHOD_POST);
}
好吧。但它要求,用户需要先调用编辑表单,编辑它(如果需要),然后将数据发送到服务器(通过提交表单)。由于目标是动态创建克隆,因此我需要一种方法来模拟这些步骤。
如何获取通常通过表单提交传递的数据,而不需要真正的提交?