0

エンティティからいくつかの値を追加するフォームビルダーがあります:

$builder->add('affiliation', 'entity', array(
    'class' => 'SciForumVersion2Bundle:UserAffiliation',
    'multiple' => true,
    'expanded' => true,
    'query_builder' => function(EntityRepository $er) use ($author,$user) {
     return $er->createQueryBuilder('ua')
        ->where("ua.user_id = {$user->getId()}")
        ->andWhere("ua.affiliation_id not in ( select pa.affiliation_id FROM SciForumVersion2Bundle:PersonAffiliation pa where pa.person_id = {$author->getPersonId()} )");
     },
     'required'  => true,
));

私のコントローラーでは、フォームに何かがあるかどうかを確認したいと思います。何かある場合は 1 つのビューを表示し、何もない場合は別のビューを表示します。

これは可能ですか?

ありがとうございました。

4

2 に答える 2

0

試してみてください:

$data = $form->getData()

関数 getData() ドキュメンテーション Book

于 2013-02-15T11:06:33.310 に答える
0

フォーム タイプの現在のデータ (フォームをレンダリングした直後) を取得する場合は、builder標準で各フォーム タイプに提供されている を使用できます。

これは通常の形式の応答とまったく同じように機能するため、次を使用できます。

$builder->getData();

if 句を使用して、生成するものに応じてさまざまなフィールドを追加します。

于 2013-02-16T13:05:43.457 に答える