3

フォーム コレクションを作成していますが、次のような行が出力されます。

<input type="number" name="order[items][1][qty]">
<input type="number" name="order[items][2][qty]">

しかし、私がやりたいのは、このビットを持っていることです:

<input type="number" name="order[items][DB_ID_1][qty]">
<input type="number" name="order[items][DB_ID_2][qty]">

DB_ID_1 は、データベース レコード ID の数値です。したがって、次のようにテンプレートの各行を印刷できます。

{{ form.items.1 }}

したがって、ID 1 のデータベース レコードのフォーム要素を出力します。現在、実際のデータベース ID 9 を持つ可能性のあるキー 1 の要素を出力します。

さらに必要な情報があればお知らせください。ありがとう

4

2 に答える 2

3

私はついにこの投稿の助けを借りて答えを見つけましたフォームのコレクションを埋め込む Symfony2フォームの追加と削除を許可する

それは非常に単純な解決策でした-私は間違った場所を探していました.次のようにカスタムクラスリポジトリでINDEX BY x.idを使用する必要がありました:

$em->createQuery("SELECT f FROM ExampleCoreBundle:Folder f INDEX BY f.id WHERE f.uid = :uid");

これにより、フォルダーのデータベース レコードの id フィールドである配列のキーを使用して、Folder オブジェクトの配列が返されました。

これは、私が最初に望んでいたフォーム コレクションで正常に機能するようになりました。この情報は、Web サイトのフォーム コレクション ページにはないと確信しているため、将来的に他の人に役立つことを願っています!

于 2013-05-23T20:50:23.877 に答える