6

在我当前的 ZF2 项目中,我有一个复杂Form的多层嵌套Fieldsets,它们反映了要在后台保存的对象的结构。目前,如果数据有效,则数据直接发送Controller到数据库并保存到数据库中。

现在应该实现一个中间步骤:用户应该有机会在将输入数据保存到数据库之前检查它。如果他认为它是正确的,则应该提交表单数据并将其保存到数据库中;如果用户决定必须编辑表单,他应该能够返回到表单并更正它。(当然所有这些都在一个循环中,直到用户对表单感到满意并提交它。)

这意味着,需要一个预览页面。此页面/action应该获取数据并以某种方式显示它(作为表格或但是)。数据需要临时存储在某个地方,并准备好与Form对象“水合”并保存。如果用户想要更新表单,则应该恢复表单。

我该如何实现这个要求?

更新

我正在寻找服务器端解决方案。预览应该是一个新页面,而不是同一页面上的 JavScript/客户端生成的 HTML(用于跟踪和其他目的)。

4

2 回答 2

0

由于我不知道您的应用程序/数据库的结构如何,我只能推测您可以创建另一个表来保存临时数据,或者在用户提交表单并对其进行验证而不是将其保存到数据库之后,使所有字段都读取-仅将原始提交按钮替换为将保存数据的按钮和将用户带回到他/她可以更改数据的表单的按钮。

于 2016-05-28T21:31:35.903 回答
0

我想说最好的解决方案是实现一个客户端(java-)脚本,该脚本在您执行表单POST请求之前执行。您可以捕获表单提交事件并呈现客户端视图,在该视图中显示所有表单字段(名称和值)的当前状态。如果用户点击accept您继续POST操作。如果用户单击取消,您将返回到允许其他更改的表单视图,并且整个事情会重复。

找到有关如何执行此操作的示例应该不难......

一个例子是这篇博文,但在 Google 的帮助下还有更多内容可以找到。

于 2016-05-16T14:44:25.163 回答