Symfony2にフォームを埋め込む際に問題があります。私は技術的に間違ったことをしている可能性がありますが、私が作った間違いはdb-setupのレベルにあり、最初にフォームを埋め込む必要はありません。私がコードを提示する前にまずそれに焦点を当てましょう。Symfony2で埋め込みフォームを使用する
私はVとOという2つのエンティティを作成しました。これらは両方とも場所を表しますが、場所の種類は異なります。 ref-idを介して、それぞれエンティティアドレスを参照します。複数のVは同じアドレスを参照することができ、複数のOは同じアドレスを参照することができ、同じアドレスにVとOが存在することさえあります。 V、O、アドレスを表示する(コントローラとルーティング作業)。アドレスの作成や編集もうまくいきます。私はAddressTypeというフォームタイプを作っています。これはレンダリングされ、うまく動作します。
VとOもformTypes:VTypeとOTypeを持ちます。彼らは、Twigテンプレート、ルート、コントローラアクションなどを適所に持っています。
これで、新しいVをフォームに入力できるようになりました。新しいVを入力するためのフィールドもあります。だから、私はユーザーが何らかの種類のリストから既に存在するアドレスを選ぶことを望んでいないが(しかし、私はそれが機能している)、新しいアドレスを追加できるようにしたい。アドレスがdbテーブルの "Addresses"に存在していれば(これも可能です)、Symfony2は同じアドレスを再度作成するのではなく、既存のアドレスを参照する必要があります。
私の問題は、VまたはOフォームに埋め込まれたAddressフォーム(AddressType)の提示に成功しないことです。基本的には、AddressTypeフォームをVまたはOフォームの一部としてレンダリングする必要があります。これは可能ですか?
しかし、私のdb-setupは大丈夫ではないかもしれませんし、Addressを別のエンティティ(およびdbテーブル)にしてはいけませんでしたが、エンティティVとOの一部にする必要がありました。私が推測する問題も解決するでしょうが、それは良い練習ですか?
ご協力いただきありがとうございます。
まず基本的なことを考えてみましょう。あなたの質問を更新し、Address、V、Oの間の関係(ymlまたは注釈)を投稿してください。これはあなたがどのような関係を使っているかを明確にします。 – Cerad