各要素を表示グループでラップする必要がある zend フォームがあります。次に、要素のグループを別の表示グループにラップする必要があります。Zend フォームはネストされた表示グループをサポートしていないため、代わりにサブフォームを使用します。
したがって、私の構造は次のとおりです。
Form
--- SubForm (1)
--- --- DisplayGroup (1-1)
--- --- --- Element (1)
--- --- DisplayGroup (1-2)
--- --- --- Element (2)
--- SubForm (2)
--- --- DisplayGroup (2-1)
--- --- --- Element (3)
--- --- DisplayGroup (2-2)
--- --- --- Element (4)
等
ただし、これにより、各サブフォームがそれに属する各要素の親として設定されるという問題が生じます。これにより要素の名前が変更され、 fename="username"
は になりname="subformname[username]"
ます。
表示グループの代わりにサブフォームを使用しているため、余分な機能は必要ありません。
この名前の変更を無効にするにはどうすればよいですか?
PS:カスタム関数を使用して各要素を「一括処理」しています(些細なこと-デコレータの削除、ラベルの設定など)setAttrib('name', $element -> getName())
。日付ピッカー、カラーピッカーなどの ZendX フォーム要素では機能しません。