[英]How to implement a form preview page in Zend Framework 2?
在我當前的ZF2項目中,我有一個復雜的Form
有多層嵌套的Fieldset
,它反映了要在后台保存的對象的結構。 目前,數據直接發送到Controller
並保存到數據庫(如果有效)。
現在應該實現一個中間步驟:用戶應該有機會在輸入數據保存到數據庫之前檢查輸入數據。 如果他決定,這是正確的,表格數據應該提交並保存到數據庫中; 如果用戶決定必須編輯表單,他應該能夠返回到表單並進行更正。 (當然是循環中的所有內容,直到用戶對表單感到滿意並提交它。)
這意味着,需要預覽頁面。 此頁面/ action
應該獲取數據並以某種方式顯示它(作為表格或者然而)。 數據需要暫時存儲在某處,並准備好“水合”到Form
對象並保存。 如果用戶想要更新表單,則應該恢復表單。
我該如何實現這個要求?
UPDATE
我正在尋找服務器端解決方案。 預覽應該是新頁面,而不是同一頁面上的JavScript /客戶端生成的HTML(用於跟蹤和其他目的)。
我想說最好的解決方案是實現在執行表單POST
請求之前執行的客戶端(java-)腳本。 您可以捕獲表單提交事件並呈現客戶端視圖,在該視圖中顯示所有表單字段(名稱和值)的當前狀態。 如果用戶單擊“ accept
,則繼續執行POST
操作。 如果用戶單擊取消,您將返回到允許其他更改的表單視圖,整個過程會重復。
找到如何做到這一點的例子應該不難:
這個博客文章就是一個例子,但在Google的幫助下還有很多其他內容可以找到。
由於我不知道你的應用程序/ db是如何構造的,我只能推測你可以創建另一個表來保存臨時數據,或者在用戶提交表單后對其進行驗證而不是將其保存到db使所有字段都讀取 - 僅將原始提交按鈕替換為將保存數據的按鈕,以及將用戶返回到他/她可以更改數據的表單的按鈕。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.