2010-08-29 145 views
0

有沒有與建築應用程序類似的任何提示wufoo.com?我正在構建一個應用程序,登錄的用戶以類似的方式創建表單...我想知道的是,如果zend,symfony或yii最適合這樣做?動態生成表格/從模型生成的動態表單/表單

我會在這裏收集提示,以便其他人更容易看到。該框架

優勢,可以幫助這一點:

  • Symfony的有學說(但形式是通過運行一個腳本部署?)
  • Zend公司有它的形式和窗體 集成(也許集成 教條是可能的嗎?)
  • Zend有form_decorators,但他們有很高的學習門檻。
  • Yii有它的形式建設者和良好的PDO數據庫連接

,或是否有簡化「對飛表單生成」任何其他框架?

PS。 djangos解決方案非常有趣,但它需要在PHP中。

回答

1

通常使用symfony我知道這是可能的使用symfony。您可以通過這種方式即時生成表單。我認爲Zend Framework以類似的方式做到了這一點,所以這也是一個合適的選擇。

,你會怎麼做呢symfony中,雖然「彎曲」的框架位:

  1. 創建表單(姓名等),一張桌子和一張桌子formfields(類型,名稱,必需)
  2. 使用configure()方法創建sfForm類,該方法爲給定表單添加字段,並將表單字段添加到$this->widgetSchema,驗證器添加到$this->validatorSchame
  3. 轉到:)

這有點不是什麼形式的框架是爲(以這種方式動態字段),但我已經成功地使用它的一些項目。

關於Codacula提到的Javascript:我不認爲有什麼問題中提到了Javascript的用法。它是 可能有些Javascript會進入這個,但它不是我認爲的問題的一部分。

2

我想不出任何專門針對動態生成表單的問題。這看起來大多像是一個基於Javascript的風險投資,所以你最終可能最終也會使用基於Javascript的笨重系統。另外,表單生成並不像使用框架那樣容易,尤其對於那些不會使用特定框架的人來說。很多框架都會在隱藏字段中添加或以某種方式命名字段。我敢打賭,它會讓更多的人頭疼,試圖用一個預先制定的框架爲普通大衆提供一些東西,而不是用自己的解決方案。

如果你堅持使用PHP來生成表單,那麼現在我會跳過Javascript,並提出一個解決方案,它可以處理簡單的HTTP請求,然後查看使用JS框架來使表單生成「動態」。

2

我不知道其他框架,但我可以說這個關於Zend框架。它的Zend_Form類非常強大和靈活。它非常適合這樣的項目,但Zend_Element_Decorators存在陡峭的學習曲線。

使用Zend,您可以使用Zend_Db將關於表單的信息存儲在數據庫中,並使用它構造一個使用其addElement()函數創建所需元素的Zend_Form。

當然,使用這個更好,然後將自己的表格生成起來。據我所知Zend_Db和Zend_Form之間沒有接口,但你可以寫很多接口。 Zend非常靈活,你可以做你想做的事情。

也許其他框架更好,因爲我不知道。

+0

謝謝。我還沒有看過form_element_decorators,但它看起來很有前途。現在我正在Yii工作,這裏有從數組中渲染表單的體面方法(其中可能會從數據庫中獲取這些方法)。 – Mikelangelo 2010-08-30 14:23:14