Blog

【symfony】collectionタイプのForm実装

2014.06.17Cat:Symfony プログラマー

久しぶりsymfonyのブログを書きます。
前から難しいと思ってたcollectionタイプFormの実装について、記事を見て、Entityが複数あってjqueryもあって、簡単に実装できないなあという感じでしたが、簡単な方法を思い出したので、今度こそやってみたいと思います。

Formの設定ファイル

複数のメールアドレスを取りたい場合、下記のようにフォームを設定します。

twigファイル

少々長くなりますが、大体下記のようになると思います。

「Add another email」をクリックすると、

に置換され、inputboxが増えていく感じです。

symfony2.0は、prototypeでは

を使ってましたが、symfony2.1からは

を使っているらしいです。

Controllerでの処理

Entityにemailsというカラムを持たせて、serializeしてDBに記録すればいいと考えています。

本当に意味あるのか?

collectionタイプって、複数Entityを関連させてはじめて意味があると思います。
単なるデータを記録するなら、テキストエリアを使えば十分対応できるかと思います。

Author Profile

jeff_maj

システムエンジニア/1984年生/上海交通大学卒/Webサービス/EC/iphone/android

» 投稿一覧
  • Launch Cart次世代ECサイト構築システム 初期月額無料
  • LaunchMovie ECに特化した動画制作サービス

Archive

ページTOPへ